gpt4 book ai didi

php - 如何防止重新执行查询php + mysql

转载 作者:行者123 更新时间:2023-11-29 02:11:06 25 4
gpt4 key购买 nike

我正在学习 PHP 和 MySQL。我决定玩一点,我制作了一个动态页面,我用 MySQL 和 if 循环实现了它(我不在乎它是否值得,只是为了好玩)。

代码看起来像这个例子:

mysqli_query($conn,"UPDATE something SET something = something + 1 WHERE id = " . $_GET['id']

if(mysqli_num_rows($result) > 0){
while($row = mysqli_fetch_assoc($result)){
echo table;
}
}

每次有人单击子页面上的链接时,它都会将 $_GET['id'] 传递给上面的代码。一切正常,但是......但是在刷新页面后,使用更新语句的查询正在“重新执行”(我不知道它是否正确 - 英语不是我的母语)和标题('Location:')不起作用...它只显示“找不到页面”。

有什么办法可以防止刷新后重新执行查询吗?

最佳答案

<?php
session_start(); //you call this to use session variables

if(isset($_SESSION['details']) && $_SESSION['details']==true)
{ /*do nothing since query has ran once*/}
else
{
/*run query since query has not been run*/
mysqli_query($conn,"UPDATE something SET something = something + 1 WHERE id = " .$_GET['id'];
$_SESSION['details']=true; //you set a session variable to true when query runs the first time.
}

/*i am assuming there is a select statement here that retruns the **$result** */
if(mysqli_num_rows($result) > 0)
{
while($row = mysqli_fetch_assoc($result))
{
echo table;
}
}
?>

关于php - 如何防止重新执行查询php + mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52194794/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com