ホームページ > バックエンド開発 > PHPチュートリアル > MySQL への PHP イメージのアップロードが失敗するのはなぜですか? どうすれば修正できますか?

MySQL への PHP イメージのアップロードが失敗するのはなぜですか? どうすれば修正できますか?

Barbara Streisand
リリース: 2024-12-02 18:50:12
オリジナル
625 人が閲覧しました

Why Is My PHP Image Upload to MySQL Failing, and How Can I Fix It?

PHP を使用して MySQL データベースに画像をアップロードする方法: 一般的なエラーのトラブルシューティング

MySQL データベースに画像を保存するときに問題が発生した場合PHP を使用する場合、問題が発生していることを確認することが重要です

エラー メッセージ: 「SQL 構文にエラーがあります... 行 1 の '' 付近」

問題:エラー メッセージは SQL に問題があることを示していますquery.

解決策:

  • データベース内の "image" 列が BLOB 型であることを確認してください。
  • PHP を変更してくださいそれに応じてコードを作成します。例:
$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$image_name = addslashes($_FILES['image']['name']);
$sql = "INSERT INTO `product_images` (`id`, `image`, `image_name`) VALUES ('1', '{$image}', '{$image_name}')";
ログイン後にコピー

避けるべきその他の一般的な間違い:

  • 非推奨の MySQL 関数の使用:mysql_ の代わりに 、PDO の使用を検討するか、 MySQLi.
  • MySQL へのイメージの保存: 通常、イメージを MySQL データベースに直接保存することはお勧めできません。別のファイル システムまたはコンテンツ管理システムの使用を検討してください。
  • 間違った HTML フォーム: ファイルのアップロードをサポートするために、HTML フォームに正しい enctype 属性があることを確認してください。正しい構文は次のとおりです。
<form action="insert_product.php" method="POST" enctype="multipart/form-data">
ログイン後にコピー

ファイル アップロードの処理に関する追加のヒント:

  • データのエスケープ: To SQL インジェクションを防止します。ファイルのアップロードを処理するときは、mysql_real_escape_string() を使用してデータをエスケープすることを忘れないでください。
  • PDO または MySQLi の使用を検討してください: これらは、mysql_ のより最新で安全な代替手段です。

以上がMySQL への PHP イメージのアップロードが失敗するのはなぜですか? どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート