現在「いきなりはじめるPHP」本で勉強中です。
実際にパソコンを使って進めているのですが、アンケート自動保存機能の所でつまずいてしまいました。
アンケートを入力しOKボタンを押しても、エラーが出てデータベースに追加されません。
ググって調べると、ここでつまずく(エラーが出る)人結構いるみたいですね。
中には、
「この本が古いから、本の通りにコードを書いてもエラーが出てしまう」
なんて意見もありましたが、実際どうなのでしょうか?
今回はこのへんについて書いていきたいと思います。
「いきなりはじめるPHP」アンケート自動保存機能がエラーになってしまう。
「いきなりはじめるPHP」本のアンケート自動保存機能は、内容が古くてエラーが出てしまうのでしょうか?
結論から言うと、本の通りにコードを書けば今でも正常に動きます。
私の場合、エラーの原因はただのスペルミスでした。
具体的には
「user」が「User」に、「sql」が「spl」になってました。
コードを修正し、OKボタンを押すと↓
データベースに自動保存されました!↓
では、なぜここでつまずく(エラーが出る)人が多いのでしょうか?
それは、単純に書くコードの量が多く、間違えやすいからだと思います。
コピペではなく本を見ながら初心者が手入力するので、一文字も間違わず入力するのは困難です。
それプラス、本が古いという先入観から
「本の通りにコードを書いてもエラーが出てしまう。」
と思ってしまうのでしょう。
「何度見てもスペルミスが見つからない」という方は、時間を置いてまた見て下さい。
私も最初、何度見てもスペルミスが見つからず、
ググって出てきた解決策を色々試すもやっぱりダメで、
時間を置いてから見たらすぐスペルミスが見つかりました。
半角スペースがわかりづらい!
あと間違いやすいのは、
$dbh=new PDO……の所と、
$sql=’INSERT INTO anketo……の所。
半角スペースをちゃんと入れないとエラーになります!
この「いきなりはじめるPHP」本の欠点は、半角スペースがわかりづらいところ。
紙に書いてあるものなので、コードの微妙に間が空いてる所は半角スペースなのかそうじゃないのかわかりづらいです。
逆に、変に半角スペースを入れるのもやめた方がいいです。
例えば
mysql:dbname=phpkiso;host=localhost
の「=」の前後とか。
結論。
「いきなりはじめるPHP」本のアンケート自動保存機能は、
2020年10月現在、本の通りにコードを書けばちゃんと動きます。
「本の内容が古くてエラーが出る」なんてことはありません。
ただし、本に書いてあるコードは半角スペースがわかりづらい。