PHP コードを使用して MySQL データベースに画像をアップロードする方法
Web アプリケーションを開発する場合、MySQL データベースに画像をアップロードするのは一般的なタスクです。ただし、画像データを効率的に処理できるように PHP コードが正しく構成されていることを確認することが重要です。
問題の説明
開発者は、PHP コードで問題を経験しています。画像を MySQL データベースに挿入することを目的としています。このコードはエラー メッセージを生成しませんが、画像データをデータベースに挿入できません。コードのスニペットを以下に示します。
$image = file_get_contents ($_FILES['image']['tmp_name']); $image_name = $_FILES['image']['name']; if ($image_query = mysql_query ("insert into product_images values (1,'$image_name',$image )")) { echo $current_id; //echo 'Successfull'; } else { echo mysql_error(); }
解決策
分析の結果、コード内で次の問題が特定されました。
<form action="insert_product.php" method="POST" enctype="multipart/form-data"> <label>File: </label><input type="file" name="image" /> <input type="submit" /> </form>
改訂コード
次のコードには必要な修正が組み込まれています:
$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}')"; if (!mysql_query($sql)) { // Error handling echo "Something went wrong! :("; }
これらの問題に対処することで、PHP コードは MySQL データベースに画像を正常にアップロードできるようになります。また、パフォーマンスとスケーラビリティの理由から、イメージ ファイルをデータベース内ではなくディスクに保存することを検討することをお勧めします。
以上がPHP イメージのアップロードが MySQL データベースに挿入できない場合のトラブルシューティング方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。