質問: ### 前提・実現したいこと こんちわ。システム開発の勉強を独学でしてます。 現在、登録内容を記述してボタンを押すとDBに反映されるように練習してます。 しかし、下記内容で困ってます。 この状況を打破するにはどうしたらよいでしょうか。 お詳しい方よろしくお願いします。 ### 発生している問題・エラーメッセージ ``` 内容をすべて記述してもDBに登録内容が反映されない。 ``` ### 該当のソースコード ``` ".$registered."件登録されました"; }else { echo "ERROR:フォームがすべて入力されてません"; } }else { echo "下記内容をご記入とご確認の上で会員登録を押してください。"; } ?> Name; Name; Email; Gender;Male FeMale Age; Under 30 Bitween 30 and 60 Over 60 Coments; password; ``` ### 試したこと 課題に対してアプローチしたことを記載してください ### 補足情報(言語/FW/ツール等のバージョンなど) php,ATOM,phpmyAdmin
回答: mysqli_query()の実行結果を受け取る変数を記述してない、 そもそもDB周りのエラー発生時の対策をしていない、 非常に危なっかしいプログラムだと言わざるを得ません。 PDO接続なら例外スローでエラートラップしやすい気もしますが、 mysqliを使うのであれば一つ一つ実行のたびに結果を変数に取得するように義務付け、 エラーの種類を特定しやすいようにするべきでしょう。 PHP: mysqli::query - Manual http://php.net/manual/ja/mysqli.query.php 失敗していればFALSEを返してくるので、必ずチェックする。 また、INSERT INTO文で、idに該当する箇所に'$fname'を突っ込んでいたりするので、 たぶん間違いですよね。