为什么SQL代码没有运行?

时间:2018-03-30 17:41:37

标签: php mysql

我正在创建一个网站,使用此HTML代码询问用户的输入:

<form>
     <input type="text" name="question1input1" />
</form>

但是当我在第二页上使用这个php上传到数据库时运行它:

$que1in1 = $_POST['question1input1'];

if ($que1in1 == "x-coordinate") {

    $answer = '<text style=\'color: yellowgreen;\'>x-coordinate</text>';

    $score = 1;

    $snumber = $_SESSION['DcYnuJmQKJkkBPEY'];

    $sql2 = "UPDATE `chapter 9 pre-test` SET `score1` = '$score' WHERE `chapter 9 pre-test`.`snumber`='$snumber';";

    $sql3 = "UPDATE `chapter 9 pre-test` SET `1` = '".$answer."' WHERE `chapter 9 pre-test`.`snumber`='$snumber';";

    if ($con->query($sql2) == TRUE) {}

    else {echo "something happened... ".$score;}

    if ($con->query($sql3) == TRUE) {}

    else {echo "something happened... ".$answer;}

}

$sql2返回成功,但$sql3作为错误返回。

1 个答案:

答案 0 :(得分:-1)

尝试更改$answer中的html代码以使用双引号,因为您在更新查询中使用单引号作为字符串分隔符

$answer = '<text style="color: yellowgreen;">x-coordinate</text>';

如果这是导致此问题的原因,我建议您使用PDO和预编译语句。如果您使用预准备语句

,则不会发生这种情况