提交按钮不工作在第一次点击


Submit button not working on first click

我尝试了很多不同的东西,我似乎不能弄清楚为什么提交按钮在第一次点击时不起作用。我已经从代码中删除了if语句,仍然需要两次单击。在第一次点击它刷新页面,这是最明显的,当你点击一个提交按钮,你必须向下滚动到。下面的代码在页面上重复了大约27次,但不同的歌曲。所有的工作后,第二次点击,所以我很确定他们是正确连接。同样,当你点击一次按钮,然后如果你点击另一个按钮,它会提交你点击的第一个。

我已经在页面上设置了一个测试帐户,如果有人想看看它实际上是什么样子的。http://www.saint57records.com/rewards/index.php用户名:test密码:test

<?php
$resultstwo = mysqli_query($con,"Select * FROM users WHERE user_name ='$username'");
while ($row = mysqli_fetch_array($resultstwo))
{
extract($row);
}
?>
<form method="post" action="index.php">
  <?php
    //If submit form was clicked
    if(isset($_POST['endo'])) {
        //Server side validation for security purposes
       if($points >= 100 AND $endo == 0 AND $savetheworldalbum == 0) {
            mysqli_query($con,"UPDATE users SET points = points - 100 WHERE users.user_name = '$username' LIMIT 1");
            mysqli_query($con,"UPDATE users SET endo = 1 WHERE users.user_name = '$username' LIMIT 1");
        }
    }
    if ($points >= 100 AND $endo == 0 AND $savetheworldalbum == 0) {
        echo '<input type="submit" name="endo" value="100pts">';
    } elseif ($endo == 1 OR $savetheworldalbum == 1) {
        echo '<input type="submit" name="submit" value="100pts" disabled title="You already earned this track!">';
    } else {
        echo '<input type="submit" name="submit" value="100pts" disabled title="You need at least 100 points for this download">';
    } 
  ?>
</form>

这是输出

<form method="post" action="index.php">
<input type="submit" name="endo" value="100pts"></form>                                                    

尝试将提交处理程序放在表单的外部(html/php文件的顶部)。

<?php
if(isset($_POST['endo'])) {
    //Server side validation for security purposes
   if($points >= 100 AND $endo == 0 AND $savetheworldalbum == 0) {
        mysqli_query($con,"UPDATE users SET points = points - 100 WHERE users.user_name = '$username' LIMIT 1");
        mysqli_query($con,"UPDATE users SET endo = 1 WHERE users.user_name = '$username' LIMIT 1");
    }
} else { ?>
<html>
.`
.

看起来你正在设置php变量$endo后,你决定是否使提交按钮禁用或不。首先读取$_POST,收集数据,然后生成HTML。但是,我真的不能告诉你,除非你包括代码$endo设置