【发布时间】:2017-03-10 22:30:41
【问题描述】:
代码如下:
$coinno = $_POST["CoinNo"];
$week = $_POST["week"];
$payer = $_POST["payer"];
$payee = $_POST["payee"];
$servername = "localhost";
$username = "username"; // Edited from original
$password = "password";
$dbname = "database";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "INSERT INTO `Transactions`(`Week`,`Coin`,`Payer`,`Payee`)
VALUES ($week,$coinno,'$payer','$payee')";
if($conn->query(sql)===TRUE)
{
echo "Success";
}
else
{
echo "Error ".$sql."<br>".$conn->error;
}
$conn->close;
?>
还有我的错误信息:
错误 INSERT INTO
Transactions(Week,Coin,Payer,Payee) VALUE (1,2,'Bob','Carol') 您的 SQL 语法有错误;查看与您的 MariaDB 服务器版本相对应的手册,了解在第 1 行的“sql”附近使用的正确语法
我尝试过使用反引号、单引号等。即使从 phpMyAdmin 复制生成的查询也无济于事。
另一个值得注意的问题是我的 Transactions 表只有一行,但是当我尝试选择它时,我得到 0 个结果。会不会有联系?
【问题讨论】:
-
将
if($conn->query(sql)===TRUE)更改为if($conn->query($sql)===TRUE)。美元符号非常重要。 -
感谢@cteski,我知道这是一件小事,但它一直在逃避我。