手から出たゴミ

食って、寝て、糞をする合間で作り出されたゴミ

PHPでバグ修正

INSERTができない

パーフェクトPHP(2016版)の第6章のコードを写していると INSERTができないという非常事態に!

すぐさま、teratailに質問をぶつけた

そこで、var_dump()でエラーのチェックができることを知った

$in = "INSERT INTO `post` (`name`,`comment`,`create_at`) VALUES ('". mysqli_real_escape_string($link , $name) . "','". mysqli_real_escape_string($link , $comment) . "','". date('Y-m-d H:i:s') . "')";
$ret= mysqli_query($link,$in);
var_dump($ret);

上の結果がbool(false)であったため SQL文自体に問題があることがわかった。

printf("Error: %s\n", mysqli_error($link));

// $link = mysqli_connect('localhost', 'root', '');

>>> Error: Unknown column 'create_at' in 'field list'

エラーの内容から、create_atをcreated_atに変更すると DBに値が入力されていることを確認した

感想

デバッグのやり方を学べたのはデカい