PHP初心者です。

携帯用のサイト作成を考えております。
アクセスしてきたキャリアを判別して、適した絵文字を返したいと思っているのですが、なかなかうまくいきません。

<?php
if (preg_match(”/DoCoMo¥//”,$_SERVER[’HTTP_USER_AGENT’])) {
echo(”&#63696;”);
}else
if (preg_match(”/KDDI¥//”,$_SERVER[’HTTP_USER_AGENT’])) {
echo(”<img localsrc=”146” />”);
}else
if (preg_match(”/J-PHONE¥//”,$_SERVER[’HTTP_USER_AGENT’])) {
echo(”$Gc”);
?>

↑こんな感じなんですが、
echo(”<img localsrc=”146” />”);
が引っかかっているみたいで・・・
誰か助けてー(ToT)/~~~

振り分けて別ページに飛ばすのではなく、
振り分けて表示がしたいのですが。
よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/02/14 01:06:30
  • 終了:--

回答(5件)

id:kn1967 No.1

kn1967回答回数2915ベストアンサー獲得回数3012005/02/14 01:11:53

ポイント16pt

エスケープ文字

ダブルクォーテーションの関係を見直すと、

echo(”<img localsrc=”

146

” />”)

という3つの部分に分かれてしまいます。

echo(”<img localsrc=¥”146¥ ” />”)

のように ¥ でエスケープしてみてください。

id:alicia007

ご回答ありがとうございます。

¥でのスケープもいろいろ試したのですが・・・

ちなみに、echo(””)とした場合のエラーは

Parse error: parse error, unexpected ’}’, expecting ’,’ or ’;’ in /home/********/public_html/test.php on line 16

このようになりました。

あと、au(KDDI)ezwebでの絵文字の挿入は

となっているのですが、その辺が鍵なんですかね?

2005/02/14 09:47:11
id:sadcns No.2

sadcns回答回数53ベストアンサー獲得回数02005/02/14 01:36:01

ポイント16pt

http://www.hatena.ne.jp/1108310790#

人力検索はてな - PHP初心者です。 携帯用のサイト作成を考えております。 アクセスしてきたキャリアを判別して、適した絵文字を返したいと思っているのですが、なかなかうまくいきません。 ..

URLはダミーです。

> echo(”<img localsrc=”146” />”);

ダブルコーテーションが重複しているからです。

echo(’<img localsrc=”146” />’);で良いかと思いますが。

id:alicia007

ご回答ありがとうございます。

1件目の回答頂きましたkn1967さん、先ほどのは私の手違いで「;」が抜けておりました申し訳ございません。

さて、1件目の回答と今回のsadcnsさんの回答も同じ結果で、エラーは表示されなかったのですが、絵文字が表示されませんでした。

やはり、

が鍵?

2005/02/14 09:57:09
id:kgi No.3

kgi回答回数34ベストアンサー獲得回数02005/02/14 09:11:16

ポイント16pt

http://www.hatena.ne.jp/1108310790

人力検索はてな - PHP初心者です。 携帯用のサイト作成を考えております。 アクセスしてきたキャリアを判別して、適した絵文字を返したいと思っているのですが、なかなかうまくいきません。 ..

PHPは詳しくないのですが、ダブルクォーテーションにはエスケープ文字が必要なのではないでしょうか?

echo(”<img localsrc=”146” />”);

echo(”<img localsrc=¥”146¥” />”);

id:english No.4

english回答回数304ベストアンサー獲得回数02005/02/14 09:35:09

ポイント16pt

プログラムの文字コードは何で作成されていますか? また、php.iniのmbstring関連の設定はどうなっているのでしょうか?

http://webmaster.hatena.ne.jp/1102331949

PHP4で、imode絵文字を扱うための設定を教えて下さい。 具体的には、 php.iniでのmbstring設定 php.iniでの文字コード自動変換設定 PHPスクリプトファイルの文字コード な.. - 人力検索はてな

id:alicia007

ご回答ありがとうございます。

php.iniのmbstring関連の設定なんですが、

今日からPHPはじめました状態のチョー初心者なもんで、まだ良く理解していないのですが、

その辺はすべてレンタルサーバの設定のままです。って言うか気にかけていなかったですm(__)m

ちなみにレンタルサーバはシーサイドネットを利用しております。

あと、文字コードはshift_jisです。

すみません、初心者なご返答でm(__)m

2005/02/14 10:26:08
id:sadcns No.5

sadcns回答回数53ベストアンサー獲得回数02005/02/14 10:54:47

ポイント16pt

http://www.au.kddi.com/ezfactory/tec/spec/3.html

KDDI au: 技術情報 > 絵文字

2回目です。

絵文字が表示されなかったのは、ブラウザからでしょうか?

146などの絵文字番号はauの携帯からしか見れないと思います。

上記は、PerlのCGIによる掲示板ですが、携帯のキャリア毎に振り分けて、絵文字も表示できるようにしています。PCの場合はpngなどの画像を表示させるようにしているようです。

参考にされてはいかがでしょうか?

id:alicia007

ご回答ありがとうございます。

自分でもいろいろと試してみて、解決いたしました。

皆さんいろいろとご親切にありがとうございました。

2005/02/14 11:32:37
  • id:sadcns
    解決方法

    気になりましたので、もしよろしければ解決された方法を教えてください。

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません