PHP中的SQL语句,不能使用变量

时间:2018-07-29 20:02:57

标签: javascript php html sql

我目前正在尝试创建一个网页,该网页可以编辑俱乐部会员的详细信息。我有一个按钮,该按钮撤消他们进入俱乐部的权限。该按钮显示在HTML表格的每一行中。按下按钮后,它将触发功能revoke(),并应更新数据库以使其状态为“已撤消”。

但是在我的PHP中,我似乎无法使其在WHERE子句中工作。它应该为WHERE intID = "whatever their id is",但不起作用。我认为这是因为我无法将ID传递给SQL语句。

这是我的代码:

function revoke(intID1){
    <?php
    $intID=intID1;

    $conn = new mysqli("my server name", "username", "pword", "database");
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
    $sql = "UPDATE `members` SET `Status`='Revoked' WHERE `intID`=$intID";

    if ($conn->query($sql) === TRUE) {
        echo "alert('Record updated successfully')";
    } else {
        echo "alert('Error updating record')". $conn->error;
    }
    $conn->close();
    ?>
}

我很确定麻烦在于此行:

$sql = "UPDATE `members` SET `Status`='Revoked' WHERE `intID`=$intID";

我尝试将$intID更改为'$intID'并用引号引起来,但仍然无法正常使用。我什至尝试使用intID1,它是最初传递给函数的那个​​。

我环顾四周,发现有关mysql真正的转义字符串的位,但也无法使它起作用。

希望你们能提供帮助。预先感谢。

0 个答案:

没有答案