- 締切済み
漢字や平仮名の文字をSQLで実行するにはどうすればよいでしょうか。
先日した質問の仕方が悪かったようなので、再度質問させていただきます。 アルファベット以外の文字を書き込んで実行ボタンを押すと(下の例だと、Aの後ろに「様」といれてます。)、実行された SQL クエリーには「様」が表示されず、結果「N」や「?」というレコードが残ってしまいます。 あと、下記のメッセージが出てくる時もあります。 もしわかる方がいらっしゃれば教えて頂ければ幸いです。 コードの問題かと思い、php.iniやmy.iniで設定を行っているつもりなのですが、うまくいきません。 下記メッセージと設定内容 Warning: mb_strpos(): Unknown encoding or conversion error. in C:\apachefriends\xampp\phpmyadmin\libraries\string.lib.php on line 100 Warning: mb_strpos(): Unknown encoding or conversion error. in C:\apachefriends\xampp\phpmyadmin\libraries\string.lib.php on line 100 Warning: mb_strpos(): Unknown encoding or conversion error. in C:\apachefriends\xampp\phpmyadmin\libraries\string.lib.php on line 100 実行された SQL クエリー: INSERT INTO member( email, keitai, name, futan ) VALUES( 'ggg@ggg.com', 0, 'A', 100 ) 設定内容は、 my.ini [client] default-character-set=ujis local-infile=1 [mysqld] default-character-set=ujis local-infile=1 set-variable=lower_case_table_names=0 php.ini default_carset="EUC-JP" [mbstring] mbstring.language=Japanese .internal_encoding=EUC-JP .http_input=auto .http_output=EUC-JP .encoding_translation=Off .detect_order=ASCII,SJIS,EUC-JP,JIS,UTF-8 .substitute_character=none;
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- copymaster
- ベストアンサー率81% (83/102)
- copymaster
- ベストアンサー率81% (83/102)
- copymaster
- ベストアンサー率81% (83/102)
関連するQ&A
- 漢字や平仮名の文字をSQL実行できません。
漢字や平仮名の文字をSQL実行できません。 下記のメッセージが出てくるのみで、平仮名が表示されなかったり、??と表示されたり、うまく表示されません。 どうすればよいでしょうか。 おそらく、コードの問題かと思い、php.iniやmy.iniで設定を行っているつもりなのですが、うまくいきません。 下記メッセージと設定内容 Warning: mb_strpos(): Unknown encoding or conversion error. in C:\apachefriends\xampp\phpmyadmin\libraries\string.lib.php on line 100 Warning: mb_strpos(): Unknown encoding or conversion error. in C:\apachefriends\xampp\phpmyadmin\libraries\string.lib.php on line 100 Warning: mb_strpos(): Unknown encoding or conversion error. in C:\apachefriends\xampp\phpmyadmin\libraries\string.lib.php on line 100 実行された SQL クエリー: INSERT INTO member( email, keitai, name, futan ) VALUES( 'ggg@ggg.com', 0, 'A', 100 ) 設定内容は、 my.ini [client] default-character-set=ujis local-infile=1 [mysqld] default-character-set=ujis local-infile=1 set-variable=lower_case_table_names=0 php.ini default_carset="EUC-JP" [mbstring] mbstring.language=Japanese .internal_encoding=EUC-JP .http_input=auto .http_output=EUC-JP .encoding_translation=Off .detect_order=ASCII,SJIS,EUC-JP,JIS,UTF-8 .substitute_character=none;
- 締切済み
- MySQL
- Fedora7+PHP+MySQLで文字化け
すみません、表題にてPHP側でCSVファイルをINSERTで登録していますが、どうしても文字化けしてしまいます。 Fedoracore7 PHP5.2.2 MySQL5.0.37 phpMyAdmin2.11.0 <php.ini> mbstring.internal_encodein = EUC-JP mb・・・output = EUC-JP <my.cnf> [client]、[mysqldump]、[mysql]ともに default-character-set = ujis [mysqld] default-character-set = ujis skip-character-set-client-handshake init-connect = SET NAMES ujis 色々と調べてEUC-JP(ujis)で統一してるつもりなのですが・・・ phpmyadminでは文字化けは解消してまして、こちらでレコードを登録すると、PHP側では文字化けなしで表示されます。 PHP側での書き込みは、 mb_convert_encoding($val,"EUC-JP","SJIS") で行っていますが、文字化けが解消されません。 どなたかご教授頂ければと思い、質問させて頂きました。 宜しくお願いします。
- 締切済み
- PHP
- php,mysqlでの文字化け(機種依存文字)について
機種依存文字「○いち」「(株)」の文字化けがどうしても解消できません。 phpソースに機種依存文字をコーディングした場合には正しく表示されますが、外部より入力した文字をMySQLに格納し、phpにてデータを取り出し表示すると文字化けします(phpmyadminでの表示時点で文字化け)。 「mb_convert_encoding」等にてテストしてみましたが、結果は変わりませんでした。また、phpmyadminにて直接MySQLに入力しても、phpmyadminでもブラウザ(php表示)でも文字化けしてしまいます。 文字コードについて知識が浅く、各環境はデフォルト状態です。 「mbstring.internal_encoding = EUC-JP 」にも関わらず、「character_set_client = utf8」「character_set_results = utf8」としているのに、機種依存文字以外は問題無く表示されております。 1.機種依存文字化けの対応方法 2.正しい環境設定方法(文字コードの統一を行うべき等) ご教授のほど、何卒宜しくお願い致します。 <<環境>> ・windows xp ・UNIX socket 4.1.22 ・phpMyAdmin - 2.11.1 ・Mysql 4.1.21 ・PHP 4.4.7 【Mysql】 character_set_client = utf8 character_set_connection = utf8 character_set_database = utf8 character_set_results = utf8 character_set_server = ujis character_set_system = utf8 【my.cnf】 [client] default-character-set = ujis [mysqld] default-character-set = ujis [mysqldump] default-character-set = ujis 【php.ini】 mbstring.language = Japanese mbstring.encoding_translation = On mbstring.http_input = auto mbstring.http_output = EUC-JP mbstring.internal_encoding = EUC-JP mbstring.detect_order = auto mbstring.substitute_character = none; ※phpソースには「charset=euc-jp」を記載
- 締切済み
- PHP
- phpMyadminと文字コード
PHPとMySQLのインストールをxampp(ver1.6.7)を使って行いました。文字コードはEUC-JPを使いたいので、資料を片手にmy.iniにdefault-character-set=ujisとskip-character-set-client-handshakeを追加しました。 コマンドプロンプトからMySQL Monitorを使ってshow variables like 'char%';と打ってみると、次のように表示されます。 +--------------------------+--------------------------------+ | Variable_name | Value | +--------------------------+--------------------------------+ | character_set_client | ujis | | character_set_connection | ujis | | character_set_database | ujis | | character_set_filesystem | binary | | character_set_results | ujis | | character_set_server | ujis | | character_set_system | utf8 | | character_sets_dir | c:\xampp\mysql\share\charsets\ | +--------------------------+--------------------------------+ と、ここまではいいのですが、phpMyadminのトップの画面には相変わらず「MySQL の文字セット: UTF-8 Unicode (utf8) 」と表示されるます。これは無視してもかまわないのでしょうか。phpMyadminを使って入れたデータをPHPで表示するとちゃんと表示されます。
- ベストアンサー
- MySQL
- WADAXからロリポップへDBのコピー
お世話になります。 先日からWADAXからロリポップ内のサーバーへDBをエクスポート・インポートしているのですがどうも上手くいかず困っています・・・。 ■WADAX・・・PHP5 phpMyAdmin:2.10.0.2 ■ロリポップ・・・PHP5 phpMyAdminの2.6.0 具体的なエラーとしてはWADAX側でメールなどのやり取りの入ったデータ(Message.sql)をエンコードなどなしのnonでエクスポートし、その後ロリポップ側の「SQL」からインポートしたところ、 「Warning: mb_strpos(): Unknown encoding or conversion error. in /home/sites/lolipop.jp/web/pma/libraries/string.lib.php on line 112」 「#1064 - 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 'DEFAULT CHARSET=utf8' at line 30」 などと英文エラーが出てしまい、見る限り文字化けをしている様子でした。 (1)phpMyadminのバージョンが違う場合はインポートエクスポートが上手くいかないのでしょうか? (2)その他何か解決策などあればアドバイス頂けると嬉しいです(x_x;) よろしくお願い致します。
- ベストアンサー
- MySQL
- PHPがローカル環境でのみ文字化けする
PHPをApache2.0上でローカルテストすると、ブラウザ表示がどうにも文字化けしてしまいます。 EUCで組んだスクリプトをmb_convert_encodingでSJISに変換して出力しているのですが、本番用のサーバーではきちんと動作するのに、ローカル環境ではブラウザがEUCと認識してしまっているようで、文字化けが発生します。 99%php.iniかapacheの設定がおかしいのですが、どこがおかしいか見てはいただけないでしょうか。 php.iniのそれっぽい部分 mbstring.encoding_translation = Off mbstring.language = Japanese mbstring.internal_encoding = EUC-JP mbstring.http_input = auto mbstring.http_output = SJIS mbstring.encoding_translation = Off mbstring.detect_order = auto mbstring.substitute_character = none; ;mbstring.func_overload = 0 なお、Apacheのhttpd.confにAddDefaultCharset項目はありませんでした。 特殊要因としてApacheがXAMPPの中で制御されていることなのですが、php.iniはApacheのbinディレクトリ内のものを編集しています。 以上です。 どうかよろしくお願いします。 WinXP SP3 PHP 5.28 Apache 2.0 XAMPP 1.7.0 ※ApacheとXAMPPはPleiadesにてEclipseを導入したときについてきたもの。
- ベストアンサー
- PHP
- phpMyAdminでPHPのエラーのようなものが出てしまう
WordPressを使いたいため、現在MySQLとphpMyAdminでデータベースの構築をしているところなのですが、phpMyAdminにアクセスするとPHPのエラーが発生していしまいます。 何か回避方法はありませんでしょうか? エラー↓ Warning: require_once(./libraries/dbi/.dbi.lib.php) [function.require-once]: failed to open stream: No such file or directory in D:\04WebServer\public_html\phpMyAdmin\libraries\database_interface.lib.php on line 18 Fatal error: require_once() [function.require]: Failed opening required './libraries/dbi/.dbi.lib.php' (include_path='.;C:\php5\pear') in D:\04WebServer\public_html\phpMyAdmin\libraries\database_interface.lib.php on line 18 よろしくお願いします。 Windows 2000 Server 04WebServer最新版 PHP 5.25 SQL 5.0(5.0.67) phpMyAdmin 2.6.4-pl2 http://drestyle.dip.jp/test.php
- ベストアンサー
- MySQL
- MySQLインサートで文字化け
初めてXAMPPを使って、Windowsローカル上でシステムを作っているのですが、MySQLへINSERTするとどうしても文字化けを起こしてしまい困っています。(その他のHTML表示は問題ありません) 本番用のサーバーがEUC-JPなのでEUC-JPでやらなければならず、まずはMySQL等の設定ファイルを下記サイトに従ってむりくりEUC-JPに変えました。 http://phpspot.net/php/pgMySQL4.1%8CnEUC-JP%82%CC%8F%EA%8D%87.html http://cl.pocari.org/2006-06-17-1.html PHP呼び出しをして返ってくるHTTPヘッダーはいつもUTF-8のようなのでApache/conf/下のhttpd.confをいじろうと思ったのですが外部confファイルのInclude記述ばかりで該当箇所が分かりません。 環境は以下の通りです XAMPP Windows版 Version 1.6.4 Apache Version Apache/2.2.6 (Win32) php ver PHP: 5.2.4/php4互換モードにて使用 phpMyAdmin - 2.11.1 * MySQL クライアントのバージョン: 5.0.45 □phpMyAdmin上の設定 言語 - Language: 日本語-Japanese (euc) MySQL の文字セット: EUC-JP Japanese (ujis) MySQL の接続照合順序:eucjpms_japanese_ci □Apache Environment HTTP_ACCEPT_LANGUAGE ja,en-us;q=0.7,en;q=0.3 HTTP_ACCEPT_CHARSET Shift_JIS,utf-8;q=0.7,*;q=0.7 □PHPの設定 mbstring.detect_order auto mbstring.encoding_translation Off mbstring.func_overload 0 mbstring.http_input EUC-JP mbstring.http_output EUC-JP mbstring.internal_encoding SHIFT-JIS mbstring.language Japanese mbstring.strict_detection Off mbstring.substitute_character no value そもそも設定環境として難しいのでしょうか・・ どなたか勘所のある方宜しくお願いします。
- ベストアンサー
- PHP
- 同じサーバー内で異なる文字コードで作成したスクリプトの実行について
お世話になります。 LinuxでPHP4を使い、文字コード「EUC版」のwikiを利用していました。 今度、CMSのインストールを検討しているのですが、使いたいCMSでは UTF-8版しかありません。 同じサーバーの中で、複数の文字コードのPHPのスクリプトを実行する ことは出来るのでしょうか? php.iniの設定が必要な場合は、どの用に設定したらよいのでしょうか? 今は、php.iniの中で、mbstring.internal_encoding = EUC-JPと設定しています。
- ベストアンサー
- PHP
- PHP5.1 + APACHE2 + PostgrSQL8.1 + Eclipse3.2で全角文字の文字化けが
お世話になります。PHP暦5日その内3日はこの問題で悩んでいます。 EUCとSJISが混在していることが原因だと思うのですが、 その先が進みません。 過去ログなどを読み、EUCに統一することが望ましいことが分かり、 そのつもりで挑戦しているのですがダメダメ君です。 現状では、 PostgrSQLから読み出したデータはEUCで PHP内でprintやechoなどで文字を出力するとSJISとなります。 文字化けを解決する方法お願いします。 ちなみにphp.iniはこんな感じです。 php.ini -------------------------------- default_charset = EUC-JP extension=php_mbstring.dll mbstring.language = Japanese mbstring.internal_encoding = EUC-JP mbstring.http_input = auto mbstring.http_output = EUC-JP mbstring.encoding_translation = On mbstring.detect_order = auto mbstring.substitute_character = none
- ベストアンサー
- PHP
- 「MFC-J6583CDW」のコピー速度が遅く、また「写真モード」から「標準モード」への切り替えができない問題について相談です。
- 質問者は、「写真モード」から「標準モード」への変更ができないという問題に直面しています。設定画面で指定ができないため、困っています。
- 質問者は、「MFC-J6583CDW」のコピー速度が遅く、また「写真モード」から「標準モード」への切り替えができないという問題について質問しています。
補足
copymaster様 詳しいご説明大変有難うございます。 また返事が送れて大変失礼しております。 バージョンを確認するだけで手間がかかっていたのですが、 お察しの通り、 phpMyAdmin 2.6.0-pl3 MySQL 4.1.8 というバージョンでした。 ただ、ご指摘のように下記のように対応しましたが、 やはりうまくいきませんでした。 SET NAMES ujis;INSERT INTO member( email, keitai, name, futan ) VALUES( 'ggg@ggg.com', 0, 'A様', 100 ); で実行してもやはり、実行してもらえず、(漢字部分の「様」が抜けて実行されしてしまいます。(下記のように) SET NAMES ujis;INSERT INTO member( email, keitai, name, futan ) VALUES( 'ggg@ggg.com', 0, 'A', 100 ); やはりバージョンを4.0にするしかないのでしょうか。 遅れた手前再度質問するのも恐縮なのですが、お時間のある時にでも教えていただけると幸いです。