質問: $stmt->errorInfo(); echo json_encode(["error_msg" => "{$error[2]}"]); exit(); } else { header("Location: home.php"); exit(); } } else { exit('Error:アップロードできませんでした'); // 画像の保存に失敗 } } else { exit('Error:画像がありません'); // tmpフォルダにデータがない } } ``` 画像のアップロードを試みていますが、画像がアップロードできませんでしたという処理になります。 目標としてはSQLに画像をアップロードすることです。 どこかおかしい点があればご教示願いたいです。
回答: > > 画像のアップロードを試みていますが、画像がアップロードできませんでしたという処理になります。 > > > というのは、 > > } else { > > exit('Error:アップロードできませんでした'); // 画像の保存に失敗 > > } > > > のメッセージのことでしょうか? そうであれば、 > > if (move_uploaded_file($tempPathName, $fileNameToSave)) { > > > が失敗していることになりますが、`$tempPathName` や `$fileNameToSave` の中身は正しいですか? たとえば、 * `$tempPathName` のファイルが存在していますか? * `$fileNameToSave` で指定したディレククトリは存在していますか? PHP から書き込み可能でしょうか? 確認としては、move_uploaded_file のドキュメントに > > filename が有効なアップロードファイルであるが、 何らかの理由により、移動できない場合、処理は行われず、 move_uploaded_file() は FALSE を返します。加えて、警告が出力されます。 > > > とあるように Web サーバか PHP のログに move_uploaded_file の警告メッセージが記録されていないでしょうか?