• ベストアンサー

PHP携帯サイトでのフォーム入力モード指定

いつもとてもお世話になっております。 PHPで携帯サイトを作っており、メールフォームを用意しています。フォームもPHPで、htmlのテンプレートを読み込ませるものです。 そのフォームの入力モードをかな・英数字など指定したいのですがドコモだけうまくいきません。 <input type="text" name="email" size="20" maxlength="100" istyle="3" format="*x" mode="alphabet" style="-wap-input-format:&quot;*&lt;ja:en&gt;&quot;; -wap-input-format:*m;" /> と3キャリアに適するものを並列しました。 するとフォームの外に "; -wap-input-format:*m;" /> がはみ出してしまいます。(3キャリアとも/はみ出ていてもau、softbankは指定した入力モードになっていますが、ドコモはダメでした。styleやmodeの順番を入れ替えてもダメ) ググってみたのですが、「入力モードの指定の仕方」しか出て来ず同じ経験をされたことがある方はいらっしゃらないかと思いご質問しました。phpのフォームだからでしょうか? 文字色などのCSSはドコモでも適用されています。 何かご意見いただけると有難いです。どうぞよろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

前回ご利用でした「magical-form」をご利用という前提でよろしいですか? 確認してみたところ、テンプレートファイルを読み出すときに、「&lt;」などの記号を、元の出力に戻してしまうのが原因です。 「&lt;」は「<」を記号としての意味ではなくて文字として出力したい場合に使うものです。 なので、「&lt;」を「<」に、「&amp;」を「&」に変換してしまうのであれば、「&lt;」を「&amp;lt;」と記述すれば、「&lt;」に変換します。 なので、結果として記述いただいたinputタグを <input type="text" name="email" size="20" maxlength="100" istyle="3" format="*x" mode="alphabet" style="-wap-input-format:&amp;quot;*&amp;lt;ja:en&amp;gt;&amp;quot;; -wap-input-format:*m;" /> と記述しなおしてください。 コレで直ると思います。

noname#127702
質問者

お礼

hogehoge78様、またお答え下さるなんて感激です。本当にすみません。 お察しの通りmagic-formを引き続き利用させていただいてます。これによって起きている現象だったのですね。教えていただいたものでタグ修正したところバッチリでした。きれいにフォームが表示されるようになりました!!ありがとうございます。こんなことが分かるなんて尊敬してしまいます。 おかげさまでフォームは表示されドコモでも指定した入力モードになってくれたのですが、今度はauが全く反応しなくなってしまいました。 ちなみに質問文に書いたタグですが、最後の -wap-input-format:*m;" /> が私の誤りで、 -wap-input-format:*x;" /> が正しかったのですが、直してみても尚auだけ反応しません。 検索したり本を読んでも-wap-input-formatを入れると「ソフトバンクの入力が固定されてしまう」という問題のみが起きているようで、auについてのことは見当たらないので、これもやはりフォームを通していることが原因でしょうか? もし思い当たることがあったら教えていただけないでしょうか? 毎日教えを乞うばかりで申し訳ありません。

その他の回答 (2)

回答No.3

実機が無いので確認が出来ないですが、他所のホームページに掲載されている記述と違う点が一個だけ、 -wap-input-format:~~;(ここに半角スペースがある)-wap-input-format:~~; この半角スペースを消してみたら何か変わりますか? 変わらないようであれば、別のau端末でも確認してみてどうか、といったところになると思います。

noname#127702
質問者

お礼

遅くにご回答くださりありがとうございます。 半角スペース消してみましたが状況変わらずでした…。やっぱり3キャリア共通のサイトを作るというのは色々限界がありますね。 ソフトバンク入力固定も気になりますし、あきらめるべきかもと思っています。 また調べてみるので、何かできたらご報告させていただきます。 もう少し締め切らずにいさせて下さい。 何度もありがとうございます。

noname#127702
質問者

補足

いろいろ調べて試してみましたがやはりうまくいきませんでした。 今回はドコモの方に不便をおかけしますが、-wap-input-format:~はいれずにいこうと思います。 私も各キャリア1台でしか動作確認ができないため他端末だとどうか分からないのですが、とりあえず今回はこのままにしました。 ご回答下さりありがとうございました。 特にhogehoge78様には最初から最後までお世話になりっぱなしで、恐縮です。hogehoge78様が教えて下さらなかったら今回の携帯サイトは完成しませんでした。本当にありがとうございます。 何もお礼ができず申し訳ありません。もっと勉強していつか自分のように困っている人がいたときに回答できるようになることが1番のお返しなのではと考え、がんばりたいと思います。 ありがとうございました!

  • koke29
  • ベストアンサー率58% (114/196)
回答No.1

style="-wap-input-format:&quot;*&lt;ja:en&gt;&quot;; ここの ; が重複してるので、とりあえず一個にしたらどうなりますか?

noname#127702
質問者

お礼

koke29様ご回答ありがとうございます。 私もそれがアヤシイと思い試してみたのですが、結果はさほど変わりなく、やはりドコモでは反応せずフォームから "-wap-input-format:*m;"/>がはみ出しています。 なぜでしょう…。困りました。 とにかくご回答くださってありがとうございます!

関連するQ&A