我知道这个问题有点愚蠢,但是我找不到问题所在,我用文档中的代码和stackoverflow中的类似代码检查了一下,但我找不到问题所在。这是我的代码:
if (isset($_POST['buy'])) {
$id = (int) $_POST['id'];
$name = $_POST['name'];
$price = (int) $_POST['price'];
date_default_timezone_set("Europe/London");
$date = date("Y-m-d h:i:sa");
$insquery = "INSERT INTO `purchases` (file_id, file_name, price, date) VALUES ({$id}, '{$name}', {$price}, {$date})";
$insResult = mysqli_query($con, $insquery);
if ($insResult) {
//do sth
} else {
//do sth else
}
我已经测试了这些:1- post数组不为空,并且完全返回我分配给变量的那些数组。2-我有一个名为purchases的表,它的配置正确,因为我在SQL中插入了数据并将其成功取回。3-我尝试过在SQL变量中没有{}的SQL语句,但是没有运气。
另一个问题是在完成SQL语句后,如何OUTPUT Inserted.ID
在PHP中将其用作变量?提前致谢。
date
是MySql中的关键字。因此,请使用反引号(`)。INSERT INTO购买(`file_id`,`file_name`,`price`,`date`)...
使用MySQLi(对于MySQL):
$stmt = $conn->prepare("INSERT INTO MyGuests (firstname, lastname, email) VALUES (?, ?, ?)"); $stmt->bind_param("sss", $firstname, $lastname, $email); // set parameters and execute $firstname = "John"; $lastname = "Doe"; $email = "[email protected]"; $stmt->execute();
mysqli::$insert_id
了最后插入的ID(文件在这里)本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句