新しいmysqliエラーが発生するのはなぜですか?
$db = new mysqli('localhost', 'root', '', 'tran');
$name = 'ジャック';
$sql_1 = sprintf('INSERT INTO `tb_user` (name)VALUES("%s")',mysql_real_escape_string($name));
$db->query($sql_1);
なぜ表示されるのですか
警告: mysql_real_escape_string() [function.mysql-real-escape-string]: ユーザー 'ODBC'@'localhost' のアクセスが拒否されました
警告: mysql_real_escape_string() [function.mysql-real-escape-string]: サーバーへのリンクを
で確立できませんでした
これら 2 つの文は間違っています。データベース mysql_real_escape_string に接続できない場合、エラーが報告されることはわかっていますが、明らかに接続されています。
mysql_connect() mysql_select_db mysql_query() に戻せば問題ありません
また、フィールド名が null 以外に設定されているのですが、警告のような重大なエラーがスローされた場合でも、上記の SQL ステートメントで null 値が保存されるのはなぜですか? not nullは空にできない、あるいは保存できないというのは本当ではないでしょうか?