PHP第一次工作,然后失败

PHP第一次工作,然后失败,php,mysql,Php,Mysql,基本上,这使得用户在按下按钮后,必须等待2分钟才能再次按下按钮。当你第一次按下它时,它会工作,然后如果你在2分钟前再次按下它,它会说“请等待2分钟”。但在2分钟后,你可以按任意次数而不会出现错误,这不是我想要的。这是密码 <?php if('sub') { $client = $_SERVER['REMOTE_ADDR']; $username="user"; $password="pass"; $database="db"; mysql_connect(localhost,$usern

基本上,这使得用户在按下按钮后,必须等待2分钟才能再次按下按钮。当你第一次按下它时,它会工作,然后如果你在2分钟前再次按下它,它会说“请等待2分钟”。但在2分钟后,你可以按任意次数而不会出现错误,这不是我想要的。这是密码

<?php
if('sub') {

$client = $_SERVER['REMOTE_ADDR'];
$username="user";
$password="pass";
$database="db";
mysql_connect(localhost,$username,$password);
$time = strtotime("2 minutes");
$now = strtotime("now");
@mysql_select_db($database) or die( "Unable to select database");
$query = "SELECT Time FROM log WHERE IP='$client'";
$result= mysql_query($query);
$num=mysql_num_rows($result);


while($rows=mysql_fetch_array($result)){
$timestamp = $rows['Time'];
}
echo n; 
echo $now;
echo t;
echo $timestamp;


if($now < $timestamp)
{
echo "<center><h2 style=\"color:red\" class=\"texts\" id=\"homeLink\">Please wait 2 minutes.</h2></center>";

}
else{
//some other code

$query1 = "INSERT INTO log VALUES ('$client','$time','$username')";
$query2 = "UPDATE `log` SET `Time`='$time' SET `Username`='$username' WHERE `IP`='$client'";

if($num == 0)
{
mysql_query($query1);
}
else
{
mysql_query($query2);
}

mysql_close();
}
?>

您的update语句有点不正确,因此更新失败

UPDATE `log` SET `Time`='$time' SET `Username`='$username' WHERE `IP`='$client'"
您应该只使用
SET
一次,如下所示

UPDATE `log` SET `Time`='$time', `Username`='$username' WHERE `IP`='$client'"

您的update语句有点不正确,因此更新失败

UPDATE `log` SET `Time`='$time' SET `Username`='$username' WHERE `IP`='$client'"
您应该只使用
SET
一次,如下所示

UPDATE `log` SET `Time`='$time', `Username`='$username' WHERE `IP`='$client'"

我很确定你的数据库不包含你认为它包含的条目。你能检查一下吗(按下按钮后IP和其他内容)?

我很确定你的数据库中没有你认为它包含的条目。您可以检查它(按下按钮后IP和其他内容)吗?

您可以在
.php
脚本的最开始添加以显示所有错误。请试一试。您可以在
.php
脚本的开头添加以显示所有错误。请试一试。是的,它确实包含条目,我已经检查过了。我将尝试更改update语句。但如果只有一个时间戳,为什么要从数据库中提取数组?是的,它确实包含条目,我已经检查过了。我将尝试更改update语句。但如果只有一个时间戳,为什么要从数据库中提取数组?