No.2ベストアンサー
- 回答日時:
htmlspecialchars()では対応しきれない文字について
htmlのエンティティに変換したいということであれば、
htmlentities()
http://www.php.net/manual/ja/function.htmlentiti …
で対応可能ですが、
違う場合は、具体的にどういうコードを書いていて、どの時点での文字化けを問題にしているかを明確にするといい回答があると思いますよ。
No.3
- 回答日時:
No2の補足です。
もし、MySQLにデータを格納する際に
MySQLの制御文字
http://dev.mysql.com/doc/refman/5.1/ja/string-sy …
以外が文字化けするのであれば、
それはエスケープの問題ではなく、文字コード変換の問題です。
仮に
・HTML(ファイル自体の文字コードとmeta情報)
・PHP
・MySQL(フィールドの文字コード、set namesで指定される文字コード)
全てで使っている文字コードがUTF-8やであれば、
~や平方メートルでも問題なく保存出来ます。
cp932(Sjis-win)で統一しても問題保存できます。
HTMLとPHPがsjisでMySQLがcp932だったりすると化けます。
出力時も同じで、
正常にsjis-winで格納されてるデータを、sjisのつもりで取り出すと、
一部文字だけ化けます
PHPまで正常に取り出せても、
HTMLに出力する段階でメタデータがsjisに設定されていると、
ブラウザ表示の時点で化けます。
ということで、文字コードが正しいのかを一度ご確認されることをお勧めします。
No.1
- 回答日時:
単純にstr_replace()でリストをつくって地道に変換してやる
とくに波ダッシュは全角チルダと様々なところで混在しているので
注意が必要です。
<?PHP
$hoge=$_REQUEST["hoge"];
$fromlist=array("®","~","m2");
$tolist=array("®","~","㎡");
$hoge=str_replace($fromlist,$tolist,$hoge);
print $hoge;
?>
<form>
<input type="text" name="hoge" value="test®~m2test">
<input type="submit" value="go">
</form>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) findコマンドでのグロッピング 4 2022/07/04 17:51
- その他(プログラミング・Web制作) COBOL数値転記をCOPY句内での仕様 6 2022/06/15 18:48
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- フランス語 ç é à などのフランス語特殊文字の、大文字を出したいときはどうすればいいのでしょうか? 2 2022/07/22 22:43
- その他(プログラミング・Web制作) 文字コード及びフォントに関する次の記述を読み,適切なものをすべて選べ。 ASCIIとは,英数字だけを 4 2023/01/11 19:10
- Windows 10 bash の -z オプションがうまく動作しない原因を教えて下さい。 4 2023/03/22 18:04
- その他(ソフトウェア) ソースネクストアプリをインストールし、製品登録で半角英数字が入力できない 5 2022/07/03 22:44
- 眼・耳鼻咽喉の病気 片目で読書をしています 2 2023/01/08 20:40
- スタンプ・絵文字・顔文字 前回質問の続き 1 2022/08/24 16:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ハシゴの「高」が「?」に置き...
-
フォーム入力のエンコーディン...
-
phpフォームで文字化け
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
別ファイルの変数を呼び出した...
-
PHPのif文でその処理を途中で抜...
-
CFileDialogの最初のディレクト...
-
.phpと.incファイルの違いはな...
-
「警告:ページの有効期限切れ...
-
「@$変数」の「@の意味は?」
-
リンク先を隠す方法はないでし...
-
2つの画像ファイルが異なるファ...
-
現在位置より2つ上のディレク...
-
Subversionのリポジトリの削除
-
VB6にてメールを送信する方法
-
パースエラーとは?
-
XAMPPでSQL文を流すとフリーズ...
-
データ送信をボタンを押さずに...
-
【file_exists】ファイルが存在...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
文字集合範囲外の文字とパーセ...
-
(mysql_set_charset)PHPでINSER...
-
EUC-JPのサイトをSHIFT-JISに変...
-
PHPで「®」や特殊文字のエスケープ
-
EUCからshift_jisに書き換えに...
-
携帯の文字化け
-
mysql→EUC-JP、php→UTF-8の時の...
-
PHPで韓国語の表示がうまくいき...
-
PHPでセッション導入後に初めて...
-
ファイルの文字コードを調べる...
-
サーバーにアップすると文字化...
-
サーバーにアップすると文字化...
-
文字コード変えたら、fopenでき...
-
自作cgiのページがIE10で文字化...
-
HTTPヘッダはメタタグにも記述...
-
MySQL+PHPサイトでSJISからEUC...
-
フォーム入力のエンコーディン...
-
海外で作成されたPHPスクリプト...
-
wordpressがMySQLに日本語デー...
-
フォームからPOSTされた値をXML...
おすすめ情報