質問: header("Location: 500.php"); } } } var_dump($errorMessage); ``` ### 発生している問題 上記のコードが、ローカルの場合上手くいくのですが サーバー上(vps)で実施した際に`catch (PDOException $e)`ここの処理で引っかかってしまいます ### 質問点 ●質問1: ローカル上で正常に動き、サーバー上で処理がうまくいかないのは何故でしょうか? ●質問2: この場合、どこのコードをどの様に修正すればよろしいのでしょうか?
回答: PDOException に飛んでしまう、という問題が出ているという前提で解答します。 まず何が起こっているか現状のコードでは不明なので(catch した例外を何らログ出力せずにリダイレクトしているので)、まずそこを保存するようにしましょう。 その上で類推ですが、PDO でのエラーと言うことであれば、 * データベースへの接続設定が誤っている * データベースの構造がローカルとサーバで異なっており、SQL が通らない といった当たりでしょう(おそらく接続できていない可能性が高いと思いますが)。 余談: 課題というのが大学などの講義ならまだ仕方ない可能性もありますが、今時 PHP 5.4 というのは...... ※ 5.4 以前は完全にサポート終了、5系最終の 5.6 もサポート切れ(例外的にセキュリティパッチが出ることはある)