表題の件で質問させてください。
現在、symfony version 1.0.8 にて開発を行っています。
MySQLに接続して、検索SQLを実行しているのですが、どうもカタカナが混じっていると検索にヒットしません。
そこでSQLを
print_r(TableNamePeer::doSelectRS($criteria));
で表示させてみたところ、magic_quotes_gpcがOn の時のように、バックスラッシュが含まれていました。
・htaccess で、magic_quotes_gpcはOffにセットしています。
・$pear_data_dir/symfony/config/php.yml のmagic_quotes_gpcも offになっています。
バックスラッシュは下記のような感じで付け加えられてしまっています。
ソフト→\ソフ\ト
どこをいじれば治るのか、調べ切れなかったのでご存知の方がいらっしゃったら、ご教授下さい。
宜しくお願い致します。
No.1ベストアンサー
- 回答日時:
shift_jisをやめれば直ります。
shift_jisの ソ などの 文字コードと \ の文字コードがかぶっているために起こる現象です。
http://ja.wikipedia.org/wiki/Shift_JIS#2.E3.83.9 …
magic_quotes_gpc = off にするのは。php遣いの中では当然の処理です。
この回答への補足
ソースを追って調べてみたところ、mysql_real_escape_string でバックスラッシュがついていました。
ただ、上記は shift_jis の問題との事なのですが、文字コードはUTF-8に設定されています。
mysql_real_escape_string する前に、下記で試しました。
-------------------------
echo $str."<br>";
echo get_magic_quotes_gpc()."<br>";
echo mb_detect_encoding($str)."<br>";
echo implode(", ", mb_detect_order())."<br>";
echo mysql_real_escape_string($str, $con)."<br>";
-------------------------
結果
-------------------------
ソフト
0
UTF-8
UTF-8, ASCII, JIS, EUC-JP, SJIS
\ソフ\ト
-------------------------
また、データベースの問題化と思い
show variables like 'character%';
で調べてみたのですが、結果は下記の通りになりUTF-8に設定されています。
| character_set_client utf8
| character_set_connection utf8
| character_set_database utf8
| character_set_filesystem binary
| character_set_results utf8
| character_set_server utf8
| character_set_system utf8
他に確認するところはありますでしょうか?
宜しくお願いします。
ご回答ありがとうございます。
文字コードは、UTF-8で設定しているつもりなのですが、どこかの処理でshift_jisになってしまっているという事でしょうか?
フォームで受け取った値を、$criteria にaddしているんですが、直前で$_POSTなどで表示させてみると、バックスラッシュはついていません。
もう少し調べてみます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- MySQL #1062 - '0' は索引 'PRIMARY' で重複しています。とでています。 1 2023/01/01 06:13
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- PHP EC-CUBEをeclipseからコンパイル実行したいです 1 2023/02/09 21:58
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- PHP PHP MySql ページング 2 2022/09/20 06:38
- Chrome(クローム) Yahoo!検索窓の表示を削除したい 3 2023/06/24 01:44
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- MySQL mysqlがインストールされているのかどうか 1 2023/06/05 14:19
- PHP PHP ページング データベース 1 2022/06/16 10:30
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Smartyにて、文字検索
-
PHPのif文でその処理を途中で抜...
-
インスタンス化に伴うメモリ消...
-
phpの処理中に画面表示ををする...
-
PHPで偶数と奇数を判断するには
-
mysql データベース処理が途中...
-
PHP内、ボタン押下と同時にリロ...
-
PHPで文字列(日本語)の比較
-
入れ子になっているHTMLタグも...
-
onedrive にexcelファイルをア...
-
PEARのmimeDecodeでメール解析...
-
拡張子php画像をjpg画像等に変...
-
フォームで戻った際に入力済み...
-
2つの画像ファイルが異なるファ...
-
PHP フォルダ名やファイル名に0...
-
form actionで二つ送信先を指定...
-
さくらサーバーにて、phpからメ...
-
mysql複数レコードをまとめて削...
-
WordPressでテーマのヘッダー画...
-
日本語ファイル名のアップロー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PHPのif文でその処理を途中で抜...
-
インスタンス化に伴うメモリ消...
-
3の倍数の和
-
phpの処理中に画面表示ををする...
-
Smartyにて、文字検索
-
VBAからPHPを実行(キック)したい
-
PHPで偶数と奇数を判断するには
-
Cronで同じ処理を複数同時に実...
-
PHP内、ボタン押下と同時にリロ...
-
DBへの書き込みとメール送信を...
-
タイムアウト処理?となる
-
PHPExcel処理速度が遅い
-
プログラム内で処理中断後も継...
-
PHPによるSQL文の中にPHP処理を...
-
関数の前にアットマークが付く場合
-
アクセスクライアントごとにタ...
-
PHPが処理を途中でやめる。原因...
-
PHP postgres でロールバック...
-
リンクのラベルを取得したい
-
phpからjavascriptの関数呼び出し
おすすめ情報