Prepare()语句不是PHP(SQL查询)

时间:2017-07-18 00:52:19

标签: php mysql sql

我正在使用Php脚本在在线数据库中创建字段,而prepare()语句不起作用,所以我想我可能会在查询中失败,因为我不好使用SQL,这是函数;

function createQuestion($CAT, $PREG, $RESP1, $RESP2, $RESP3, $RESPC) {
  $sql = "INSERT INTO `table1` (`ID`, `CAT`, `PREG`, `RESP1`, `RESP2`, `RESP3`, `RESPC`) VALUES (NULL, ?, ? , ?, ?, '?, ?)";
  if ($stmt = $this->con->prepare($sql)) {
    echo "prepare works okay!";

    $stmt->bind_param("isssss", $CAT, $PREG, $RESP1, $RESP2, $RESP3, $RESPC);

    if ($stmt->execute()) {
        return true;
    } else{
        return false;
    }
  } else {
    echo "prepare isn't working."
  }
}

除了其他课程中指定的其他错误外,我还没有准备好#34;准备工作。"

1 个答案:

答案 0 :(得分:2)

你的陈述中有拼写错误:

INSERT INTO `table1` (`ID`, `CAT`, `PREG`, `RESP1`, `RESP2`, `RESP3`, `RESPC`) VALUES (NULL, ?, ? , ?, ?, '?, ?);

请注意'部分中的单个VALUES(...)标记?试试这个:

INSERT INTO `table1` (`ID`, `CAT`, `PREG`, `RESP1`, `RESP2`, `RESP3`, `RESPC`) VALUES (NULL, ?, ?, ?, ?, ?, ?);