
閲覧、ありがとうございます。
MySQLに画像を保存しようとして苦戦しています。
multipart/form-dataオプションをつけてpostし、phpでMySQLに入れようとしています。
header("Content-Type: image/jpeg");
$data = file_get_contents($_FILES['photo']['tmp_name']);
echo $data;
とするとちゃんと画像が表示できるのですが、
$query = mysql_query("insert into img_table (img_field) values $data");
とすると
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' …
と怒られてしまいます。
ためしにphpMyAdminから同じデータをアップロードすると$dataの部分が0xff...となっております。
文字コードの問題も考え、addslashesなどつけているのですがやはりアップロードできません。
画像をMySQLに保存するにはどのようにしたらよろしいでしょうか?
よろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
addslashesはSQLインジェクションの原因となるので使ってはいけない関数です。
存在を忘れましょう。mysql_real_escape_string を使います。$data=mysql_real_escape_string($data);
mysql_query("insert into img_table (img_field) values ('$data')");
でどうですか?
この回答への補足
ご回答、ありがとうございます。
> addslashesはSQLインジェクションの原因となるので使ってはいけない関数です。
ですよね。藁をもすがる気持ちで試してみました。
>$data=mysql_real_escape_string($data);
>mysql_query("insert into img_table (img_field) values ('$data')");
>でどうですか?
ありがとうございます。
早速試したのですが、syntax to use near ''の''部分の文章が\付きになったものの同様にアップロードできませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- その他(SNS・コミュニケーションサービス) 自分のpcがハッキングされたようなメールが来たのですがどうすればいいですか? 4 2022/10/02 16:14
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パスワードの暗号化
-
MySQLに画像を保存したい
-
列名を式で指定することはでき...
-
筆ぐるめ住所録のバックアップ...
-
MYSQLについて
-
php+MySQLしか使えないレンタル...
-
mySQLのスピード
-
「CSE」や「かねやん」からのMy...
-
PHPからMySQLが動かせません
-
INSERTを行う際に別の表のデー...
-
ライセンスについて
-
Windows版 4.0.27バージョンのm...
-
mysqlがインストールされている...
-
配列の要素でmysqlに問い合わせ
-
.sqlのファイルをそのままコマ...
-
MySQL4.0と5.0のどちらを選択す...
-
Warning: mysql_num_rows()
-
MySQLのエラーの取得
-
PHP経由でMYSQLに全角文字を格...
-
MySQLやPorstgresなどのサーバ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
mysqlコマンドでSQL文が実行で...
-
シングルクォーテーションとダ...
-
cseデータ閲覧時に文字化け
-
mysqlへのインポート処理がうま...
-
ERROR 1054 (42S22) 原因不明です
-
MySQLのLOAD DATA INFILEコマン...
-
mysqlをバックアップするツール...
-
SELECTした値との比較
-
MySQLリファレンスマニュアル(...
-
mysqlの操作について
-
mysqlのmatch() against()で検...
-
PHP+mysql データ重複登録
-
mysql超初心者です。テーブルへ...
-
MAX()でENUMの内部番号が最大の...
-
now()
-
PHPの質問です、ご回答いただけ...
-
MySQLで困っています。。
-
MySQLカラム名は日本語と英数字...
-
mysqlがインストールされている...
-
副問合せにLIKE文を使う方法は...
おすすめ情報