当我尝试在数据库中插入任何内容时,它不会显示任何错误,但数据不在数据库中。我检查了表名和结构,这就是它的意思......
SELECT是一个试用版,一个正常工作,除了上面的INSERT INTO,但为什么?
<?php
error_reporting(0);
require "../database/MySQL.php";
$sql = "INSERT INTO zb_employees (name, option, image_path, email) VALUES ('1', '2', '3', '4')";
$db->query($sql);
echo $db->affected_rows;
echo '<br>';
$sql = "SELECT * FROM zb_employees";
$result = $db->query($sql);
if ( $result->num_rows > 0 ) {
while($row = $result->fetch_assoc()) {
$row["name"];
}
} else {
echo "0 Employees found!";
}
$db->close();
答案 0 :(得分:0)
选项是MYSQL中的保留字。因此,您需要添加反引号以使其可接受
了解更多on reserved words in MYSQL
<?php
//turn this on when in development.
error_reporting(-1);
$sql = "INSERT INTO zb_employees (`name`, `option`, `image_path`, `email`) VALUES ('1', '2', '3', '4')";
$db->query($sql);
echo $db->affected_rows;
还要考虑使用预准备语句。帮助SQL注入