[PHP-users 25490] Re: php-4.3.11で文字化け
M.Shimode
mitsu @ acquez.co.jp
2005年 4月 27日 (水) 01:03:11 JST
シモデです。
> 個々一番です。
個々一番さん、適切なご指摘・ご指導をありがとうございます。
> magic_quote_gcpは常にOffにするか、magic_quote_gcpの設定をみてマークを削
> 除するようにしたほうがいいです。
> そうしないと、中途半端なエスケープをしたデータを持ちまわすことになります。
> ちなみに、その\マークは
> stripslashes()で削除できますし。
> addslashes()で追加できます。
その通りでした。現在、magic_quote_gcpはOnにしたままで、
処理タイミングを考慮して、strslashes()でデータ操作してる状況です。
> SQLでエラーになる件ですが、この場合はSQLに送る値として、DBにあった形で
> エスケープ処理を施して、
> $sql_data = mysql_escape_string($data);
> $sql = 'select * from table where data=' . $sql_data . '';
> とでもしたほうがいいです。
今回はPGを使用していますのですが、この方法でしてみたいと思います。
> 基本的に、magic_quote_gcpはDBによっては不完全なエスケープしかしてくれな
> いので痛い目を見ます。
>
> #個人的には、Pear_DBのプレースホルダ機能を推奨するけど。
勉強不足でして、Pear_DBは存じてないのですが、
参考まで拝見して、可能であれば導入してみたいと思います。
-------------------**
M.Shimode
mitsu @ acquez.co.jp
PHP-users メーリングリストの案内