MySQL的插入使用PDO不插入数据
问题描述:
为什么在MySQL中我插入功能无法将数据插入到数据库的任何人都可以解释一下吗?没有错误/警告,但我的数据没有成功插入。MySQL的插入使用PDO不插入数据
function add_update_visitor_information() {
include 'config.php';
var_dump($conn);
$stmt = $conn->prepare(
"INSERT INTO visitor_contacts (
'salutation_dr/mr/ms',
first_name,
middle_init,
last_name,
suffix,
email
) VALUES (
:salutation,
:firstname,
:middleinitial,
:lastname,
:suffix,
:email
)"
);
echo '<br><br>'.$_POST['salutation'].'<br>';
echo $_POST['firstname'].'<br>';
echo $_POST['middleinitial'].'<br>';
echo $_POST['lastname'].'<br>';
echo $_POST['suffix'].'<br>';
echo $_POST['email'].'<br><br>';
$stmt->execute(array(
':salutation' => $_POST['salutation'],
':firstname' => $_POST['firstname'],
':middleinitial' => $_POST['middleinitial'],
':lastname' => $_POST['lastname'],
':suffix' => $_POST['suffix'],
':email' => $_POST['email']
));
var_dump($stmt);
echo '<br><br>Adding or Updating!';
}
这里是我的输出:
object(PDO)#1 (0) { }
test
yo
yo
yo
test
[email protected]
object(PDOStatement)#2 (1) { ["queryString"]=> string(180) "INSERT INTO visitor_contacts ('salutation_dr/mr/ms', first_name, middle_init, last_name, suffix, email) VALUES (:salutation, :firstname, :middleinitial, :lastname, :suffix, :email)" }
Adding or Updating!
我很困惑!
答
很肯定'salutation_dr/mr/ms'
应该是`salutation_dr/MR/ms`(反勾不包括引号)。还要确保你的pdo对象被设置为在发生错误时抛出异常。
答
使用salutation_dr/mr/ms
作为列名不建议,但如果你想用这个作为列名,你可以尝试使用反引号`在查询
很肯定''salutation_dr/MR/ms''应该是'' salutation_dr/mr/ms''(后退滴答不引号)。还要确保你的pdo对象被设置为在发生错误时抛出异常。 – bassxzero
'ASCII:[0-9,AZ,AZ $ _](基本拉丁字母,数字0-9美元,下划线)'逃脱标题栏(或重新命名它)与反引号,不是报价.. HTTP:// dev.mysql.com/doc/refman/5.7/en/identifiers.html – chris85
@bassxzero,如果你作出回答,我会接受它。 – Nic