【发布时间】:2014-02-26 07:07:20
【问题描述】:
当我使用 PDO-mysql 对数据库执行我的 mysql 查询时,它不会插入值。我正在关注文档,但似乎仍然没有任何进展。
所以我的 .sql 文件是这样的
CREATE DATABASE IF NOT EXISTS `qr_db`;
CREATE TABLE IF NOT EXISTS `qr_db`.`clients` (
`id` int(11) NOT NULL auto_increment,
`first_name` varchar(100) NOT NULL,
`last_name` varchar(100) NOT NULL,
`key` char(128) NOT NULL,
PRIMARY KEY(`id`),
UNIQUE KEY `key` (`key`)
) ENGINE=MyISAM;
grant select, insert, update, delete
on qr_db.*
to qr_db@localhost identified by 'password';
这是我遇到问题的代码
if(!isset($_GET['key'])) {
$mysql = db_connect(); // <--- this is ok i already checked this
$query = 'INSERT INTO `clients` (`first_name`, `last_name`, `hash`) VALUES (?, ?, ?)';
$stmt = $mysql->prepare($query);
$stmt->bindParam(1, $f_name, PDO::PARAM_STR);
$stmt->bindParam(2, $l_name, PDO::PARAM_STR);
$stmt->bindParam(3, $dubhash, PDO::PARAM_STR);
$stmt->execute();
}
【问题讨论】:
-
$stmt->errorInfo()给你什么? -
请检查您用于
binding的任何php variable不得为空白.. 如果是这样.. 则必须将allow null放在您的特定表格字段中.. . -
errorInfo() 没有打印任何内容