[前][次][番号順一覧][スレッド一覧]

mysql:9560

From: "KAWAI,Takanori" <"KAWAI,Takanori" <GCD00051@xxxxxxxxxx>>
Date: Mon, 7 Jun 2004 23:04:11 +0900
Subject: [mysql 09560] Re: 画像データの登録に関する1064エラー

川合孝典@PHPは...な人です。


----- Original Message ----- 
From: "Shiro Ozawa" <shiro@xxxxxxxxxx>
To: <ml@xxxxxxxxxx>
Sent: Monday, June 07, 2004 3:50 PM
Subject: [mysql 09541] 画像データの登録に関する1064エラー


> 小澤と申します.
(中略)
> となると,addslashesを疑いたくなるのですが,小さいファイルでは問題なく登
> 録できているのでそれもできません.
>
> あれこれ調べたのですが,万策尽きた感があります.
> 原因として何が考えられますでしょうか?
なにはともあれ実際にどのようなエラーが発生しているか確認してみては?
それも字面だけ(ブラウザに表示されている文字)ではなく実際にどのような
エラーメッセージを出しているのかきちんと調べるべきでしょう。
#1064ってSQL syntaxのエラーでしょうから、その部分がメッセージに
#入ってませんかねぇ。

私としてはやっぱりaddslashesでは役不足と考えますが。
PHPの関数の動きはわかりませんが、ドキュメントを見る限り

<quote src="http://jp2.php.net/addslashes">
データベースへの問い合わせなどに際してクォートされるべき 文字の前に
バックスラッシュを挿入した文字列を返します。クォート されるべき文字とは、
シングルクォート('), ダブルクォート("),バックスラッシュ (\) ,NUL (NULL バイ
ト)です。
</quote>
てなこといってますから、バイナリデータをそのまま登録するのには
あまり適していないように思われます。
mysql_escape_stringかmysql_real_escape_stringを使うべきではと
考えますがいかがでしょう?
参考:
http://jp2.php.net/manual/ja/function.mysql-escape-string.php
http://jp2.php.net/manual/ja/function.mysql-real-escape-string.php

ちなみにDBD::mysql(2.9003)ではmysql_real_escape_stringを
使ってますね。

===================================================
川合 孝典 (Hippo2000)
   DBI日本語メーリングリスト管理人、Kansai.pm所属
   kwitknr@xxxxxxxxxx GCD00051@xxxxxxxxxx
   http://member.nifty.ne.jp/hippo2000http://www.hippo2000.info/
perldocの日本語情報ならperldocjp:翻訳してみませんか?
  http://perldocjp.sourceforge.jp/
===================================================


[前][次][番号順一覧][スレッド一覧]

      9541 2004-06-07 15:50 [Shiro Ozawa <shiro@x] 画像データの登録に関する1064エラー      
->    9560 2004-06-07 23:04 ┗["KAWAI,Takanori" <GC]                                       
      9567 2004-06-08 09:30  ┗[Shiro Ozawa <shiro@x]                                     
      9582 2004-06-09 16:43   ┗[Shiro Ozawa <shiro@x]