带$ _POST的isset未检测到提交按钮按下

时间:2019-04-27 17:19:40

标签: php mysql sql post button

我很难获得一个简单的isset函数来识别POST表单提交按钮。 isset似乎完全忽略了调用。

我尝试了多种不同的配置,包括将POST更改为GET,删除表单操作,更改按钮类型等...

<div>
    <h2>Change User Information:</h2>
      <div>
      <form class="settingsForm" action="index.php" method="POST">
        <p>
        <h3>Username:
        <input id="loginUsername" name="loginUsername" type="text" value="<?php echo $userName ?>" >
        </h3></p>

        <p>
        <h3>First Name:
        <input id="firstName" name="firstName" type="text" value="<?php echo $firstName ?>" >
        </h3></p>

        <p>
        <h3>Last Name:
        <input id="lastName" name="lastName" type="text" value="<?php echo $lastName ?>" >
        </h3></p>

        <p>
        <h3>Email:
        <input id="email" name="email" type="text" value="<?php echo $email ?>" >
        </h3></p>

        <button id="submit" name='submit' type="submit">Save</button>
      </form>
    </div>
  </div>
  <?php
    if (isset($_POST['submit'])) {
        $update = "UPDATE users SET firstName='".$firstName."', lastName='".$lastName."', email='".$email."' WHERE userName='".$userName."'";
        $result = mysqli_query($con, $update);
    }
  ?>

如果我将代码行移到isset的外部,那么它将立即运行。我愿意提出建议。谢谢!

1 个答案:

答案 0 :(得分:-2)

您是否尝试将$_POST['submit']放入变量? 喜欢:

    <?php

$yourvar = $_POST['submit']
    if (isset($yourvar)) {
        $update = "UPDATE users SET firstName='".$firstName."', lastName='".$lastName."', email='".$email."' WHERE userName='".$userName."'";
        $result = mysqli_query($con, $update);
    }
  ?>

也许会起作用:D 祝你有美好的一天