mysql:7899
From: Shinichi Nouzumi <Shinichi Nouzumi <nouzumi03@xxxxxxxxxx>>
Date: Sat, 14 Jun 2003 12:15:27 +0900
Subject: [mysql 07899] クォーテーションのある文字列の登録
はじめまして、MySQL を最近使い始めて間もないものです。 早速、質問させてください。 次のような件で頭を悩ませています。 環境は PHP 4.3.2 + MySQL 4.0.13 + IIS 5.0です $str = '能銀"' $str = mysql_escape_string($str); // (この文で $sql は、能\銀\" となる) $sql = sprintf("UPDATE usertbl SET name = '%s'",$sql); この sql 文を実行したところ MySQL には、 能銀\" と、\ 文字が付加されてしまいます。 また最初の $str を、 $str = '能 銀"'; とスペースを入れるとデータベースには正しく 能 銀" と、設定されます。 現状、何が問題か分からず、 とりあえずこちらのメーリングリストへ投稿させて頂きました。 my.ini の次の設定は行っています。 [mysqld] default-character-set=sjis php.ini のマルチバイトの設定は以下のようにしています。 magic_quotes_gpc = On mbstring.language = Japanese mbstring.encoding_translation = Off mbstring.internal_encoding = SJIS mbstring.http_input = auto mbstring.http_output = SJIS mbstring.detect_order = auto ご教授宜しくお願い致します。
-> 7899 2003-06-14 12:15 [Shinichi Nouzumi <no] クォーテーションのある文字列の登録 7903 2003-06-16 16:09 ┗[IWASAKI Dai <dai@xxx] 7905 2003-06-16 17:57 ┗[Shinichi Nouzumi <no] 7906 2003-06-16 18:12 ┗[IWASAKI Dai <dai@xxx] 7907 2003-06-16 18:32 ┗[Shinichi Nouzumi <no]