• 締切済み

【Flash+PHP+MYSQL】特定のテキストが文字化け

恐縮ですが、質問させていただきます。 Flash+PHP+MYSQLで連携した日記ツールを作成しています。 Flashで記事の投稿・読み込みを行っているのですが MYSQLへの保存時に、特定のテキストのみが文字化けしてしまいます。 例:「表現」→ 「阜サ」   「ソロモンは」→ 「ャ鴻c唐ェ」   「予後」 → 「洛繧フ」 Flash6で、System.useCodepage = true;を使用しています。 サーバーはUNIX、Mysqlのバージョンは4.0.27です。 文字化けの原因について調べてみたのですが、特定できずにいます。 ご存知の方いらっしゃいましたら、 お手数ですが、ご教授頂くことは可能でしょうか。 宜しくお願い致します。

みんなの回答

  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

ダメ文字 を含みますね。それも1文字目がダメ文字です。 [表]現 [ソ]ロモン [予]後 文字列 http://www.kis-lab.com/serikashiki/C/C08.html#Shift_JIS > Shift_JISの場合,一部のプログラム(perlなど)でダメ文字問題が > 発生することがあります.これは,2バイト文字の2バイト目の部分に > 0x5Cが使われていることに原因があります.   ~中略~ > そのため,"予\定表\"のようにダメ文字の後に > 問題のエスケープ文字(0x5C)を追加することで > 正しく表示することができます. > > ダメ文字リスト:―ソЫIX噂浬欺圭構蚕十申曾箪貼能表暴予 >      禄兔喀媾彌拿杤歃濬畚秉綵臀藹觸軆鐔饅鷭 その他 いわゆる「ダメ文字」について - PHPプロ!Q&A掲示板 http://www.phppro.jp/qa/178

manju17
質問者

お礼

返事が遅くなり失礼いたしました。 ダメ文字というものがあることを知りました、ありがとうございます。 おかげさまで文字のエンコードを共通にすることで、 解決することができました。 お礼申し上げます。

関連するQ&A

  • Flash8のユニコードについて。(mySQLとの連携)

    Flash8とPHPとmysqlの連携でアプリケーションを作っています。 mysqlで作ったデータベースからphpで日本語のテキストを読み込み、ActionScriptで表示させたいのですが、ユニコード(?)が違うらしく文字化けが起こってしまいます。(ムービープレビューの際) mysqlのユニコードShift-JISにしています。 Flashのユニコードを変更することはできるのでしょうか? また、文字化け解消のアドバイスなどあればお願いします。

    • ベストアンサー
    • Flash
  • phpで読み込むmysqlのデータベースが文字化け

    閲覧ありがとうございます。 数年前に作成し、なんの問題もなく運用していた顧客管理のデータベースが昨日から日本語の部分のみ文字化けをおこし????という表示になっています。 サーバーからmysqlのデータを見に行くと、データそのものには問題がなさそうです。 変更は何も加えていません。 サーバー側も見に行きましたが、メンテナンスや変更は行われておりません。 phpからの読み込みに問題があるのかと思ったのですが、新しくテストで入力した文字列に関してはちゃんと表示ができていたので、一体何に問題があるのかわからなくなっています。 読み込みに問題があるとすれば、新しく入力したものに関しても文字化けすると思ったのですが・・・。 考えられる原因と、できる対処はなにかありますでしょうか? phpバージョン PHP5.3.3 mysqlバージョン MySQL5.0 文字コード UTF-8

    • 締切済み
    • PHP
  • PHPファイルの文字コードについて AS3との連動時に文字化けします

    エディタに秀丸を使用しています。 そして、PHPとXAMPPでインストールしたMySQLを使って、 ActionScript3と連動したコンテンツを作っているのですが、 どうも、Flash上でテキスト表示した場合に文字化けしてしまいます。 そこで、Flash上では、System.useCodePage = trueという、設定をした上で大丈夫なはずなのですが、 色々検索していくうちに、そもそもPHPファイルの文字コードが間違っているのではないかと思うようになりました。 いま、コードを書いているPHPは、 文字コードをEUCとして保存しています。 これをUTF-8にしても変わり有りませんでした。 MySQLのほうの設定でも何か気をつける必要があるのでしょうか。 文字化けの原因を訴求していく際に、 PHPと、MySQLと、ActionScriptと3つあるので、 この3つのうちのどれが、原因箇所かを効率よく突き止めていく ノウハウがあれば教えていただけると幸いです。

    • 締切済み
    • PHP
  • テキスト読み込みで文字化けする

    System.useCodepage = false; HloadData = new LoadVars(); HloadData.load("tamesi.txt"); _root.I_button.onRelease = function(){ HT_001 = HloadData; } 上記のようにフレームにASを書きました。 読み込むテキストは、エンコーディング EUC、改行タイプ LF で保存してあります。perl/cgiとのデータやり取り の学習の一貫としてやっているので、できる事ならこのファイル形式での方法が知りたいと思っています。 一応、エンコーディング windows,dos、改行タイプ CRLF で保存し、 ASもSystem.useCodepage = true;にして、Flashでプレビューしてみたのですが、やはり文字化けしてしまいました。 MacOS X 10.3 、Flash 8 環境です。 上記のような場合どのように文字化けを解決できるのでしょうか? ご指導をいただけたらと思います。 よろしくお願いします。

  • PHPとMySQLの文字化け

    DBを呼び出すPHPファイルを"Shift_JIS"で作りました。 ですが、レンタルサーバーのPHP、MySQLの文字コードが"EUC-JP"との事で、 全てのファイルに読込んでいるインクルードファイルの文字コードの記述をShift_JISからEUC-JPに変更しました。 ですが、DBから呼び出してるデータは文字化けしないのですが、その他がすべて文字化けしてしまい、JavaScriptも動かない状態です。 各phpのファイルは、最後に$body で書き出す記述をしているので、 $body = mb_convert_encoding($body,"SJIS","EUC-JP"); print $body; と実行してみてもだめでした。 どうか教えて下さい。よろしくお願い致します。 ---共通インクルードファイル---- 省略 //MySQL読み込み時の文字コードを設定 mysql_query("set names EUC-JP"); //データベースを選択します mysql_select_db($DBNAME,$db); function htmlheader($pagetitle) { //各ページのヘッダ部のHTMLを組み立てる $strret = "<DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN'> <HTML> <HEAD> <META http-equiv='Content-Type' content='text/html; charset=EUC-JP'> <META http-equiv='Content-Style-Type' content='text/css'> <TITLE>$pagetitle </TITLE> </HEAD> <body border='0' cellpadding='0' cellspacing='0' width='100%'> <br>"; return $strret; } function htmlfooter() { //各ページのフッタ部のHTMLを組み立てる $strret = "<br> </BODY> </HTML>"; return $strret; } ?>

    • ベストアンサー
    • PHP
  • mysqlにおいての文字化け

    質問させていただきます 現在mysqlとperlでwebアプリケーションを作成しております mysqlクライアントでmysqlにアクセスすると 日本語のデーターがなにか文字コードのような感じ 表示になってしまいます(下記のような感じです) これはてすとです cgi経由でデーターを取得した場合は正常に表示されます my.cnfを設定し mysql>statusの結果は以下のようになります mysql> status; -------------- mysql Ver 12.22 Distrib 4.0.20, for pc-linux (i686) Connection id: 2 Current database: webdev Current user: root@localhost SSL: Not in use Current pager: stdout Using outfile: '' Server version: 4.0.20-log Protocol version: 10 Connection: Localhost via UNIX socket Client characterset: ujis Server characterset: ujis UNIX socket: /var/lib/mysql/mysql.sock Uptime: 13 min 29 sec Threads: 1 Questions: 21 Slow queries: 0 Opens: 7 Flush tables: 1 Open tables: 1 Queries per second avg: 0.026 かれこれこの問題で3日悩んでおり、もし原因がお解りの方、いらっしゃいましたらご教授いただきたいです よろしくお願いいたします!

  • 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
  • phpでmysqlのデータを表示すると文字化けしてしまう

    はじめまして、PHPでMySQLのデータを表示すると文字化けしてしまいます。先日までちゃんと表示されていたのですが、MYSQLのバージョンを4から5にUPDATEしたのがいけなかったのかな!? EUC-JPで表示したいのですが、ブラウザの「文字のエンコード」をunicodeに設定するとちゃんと表示される状況です。 MySQLにstatusコマンドを入力すると mysql> status -------------- mysql Ver 14.12 Distrib 5.0.38, for pc-linux-gnu (i686) using readline 5.1 Connection id: 553 Current database: Current user: root@localhost SSL: Not in use Current pager: /usr/bin/less Using outfile: '' Using delimiter: ; Server version: 5.0.38-log Gentoo Linux mysql-5.0.38 Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: ujis Db characterset: ujis Client characterset: ujis Conn. characterset: ujis UNIX socket: /var/run/mysqld/mysqld.sock Uptime: 2 days 15 hours 10 min 7 sec Threads: 1 Questions: 666830 Slow queries: 263 Opens: 30042 Flush tables: 1 Open tables: 6144 Queries per second avg: 2.932 -------------- のように表示されEUCで設定されているように見えます。 phpの情報は下記のように設定されています。 PHP Version 5.1.6-pl6-gentoo default_charset EUC-JP Content-Type text/html; charset=EUC-JP SQLite Encoding UTF-8 原因がわからず、困っています。 なにか引っかかることでもあれば教えてください。 よろしくお願いいたします。

  • FlashとPHPの通信で文字化け

    FlashとPHPで通信するものを作ろうと思ったのですがどうも文字化けしてしまいます。 (FLASHとPHPのどちらのカテゴリにしようか  迷いましたがFLASHで(汗)) フラッシュの方には System.useCodepage = true; という文をきちんといれています。 PHPの方にはいまいち解説サイトがなかったので <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=Shift_JIS"> という文と あとはデータを渡す際に print "&newid=" . urlencode($id); といったふうにurlencodeをしています。 恐らくPHPの方に問題があると思うのですが いまいち分かりません。どなたか教えてください。 よろしくお願いします あと必要情報がないなど そういう場合は情報追加公開要請をお願いします

    • ベストアンサー
    • Flash
  • MySQLを使ったWebアプリケーション(PHP)を作っているのですが

    MySQLを使ったWebアプリケーション(PHP)を作っているのですが、特定のカラムだけ文字化けして保存されてしまいます。 name1 name2 ?????? 太郎 上記ではカラムname1は文字化けしているのに対し、カラムname2は文字化けしていません。 ブラウザでの表示は文字化けしません。 何が原因だと考えられますか?

    • ベストアンサー
    • MySQL