• ベストアンサー

携帯フォーム入力の改行について

モバイルサイトを運営しています。 住所などを入力していただいた際に、携帯側で改行を禁止させたいのですが、そのようなことは可能なのでしょうか? また、改行したまま送信してしまってもcgi側で改行を無くすようにする方法などは有りますでしょうか? 携帯では、1行テキスト入力(input type="text")でも改行が出来てしまうので、読み込み処理の際に、データが反映できず困っております。 宜しくお願いいたします。

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

  • ベストアンサー
  • gsx_rider
  • ベストアンサー率40% (53/130)
回答No.1

おそらく単純なHTMLを生成するようなCGIではなく何らかのscriptが必要です(java script等) しかし携帯サイトですのでそれもムリかと 県 市町村 番地 などを複数のテキストボックスで入力させて CGI側で繋げるようなコードはいかがでしょ~か >改行したまま送信してしまってもcgi側で改行を無くすようにする方法などは有りますでしょうか? perlでしょうか?正規表現を使えば $string =~ s/\r//; $string =~ s/\n//; $stringから\rを抜く $stringから\nを抜く でいかがでしょ~か

wancan
質問者

お礼

ご返答ありがとうございます。 返事が遅れてしまい、誠に申し訳ありません。 >県 市町村 番地 などを複数のテキストボックスで...  検討してみたのですが、お客様の入力の手間が増えるので止めておこうということになりました。 >perlでしょうか?正規表現を使えば   $string =~ s/\r//;   $string =~ s/\n//;  こちらは試しに入れてみたのですが、正常に作動しなくなってしまいました。(メールが届かなくなった等)  当方の力不足です。せっかくご教授いただいたのに申し訳ございません。 最終的にはこちらで受注確認時に修正するという結論に至りました。 ご回答ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • テキストエリアの改行を取得したい

    最近CGIを独学ではじめたのですが、複数行のテキストエリアからの文字列の取得をした場合、改行が反映されずに表示されます。 改行コードのようなものは取得されている、とちらりとどこかで見たことがあるのですが、どのように取得して改行させるかが分かりません。 すみませんが、ご存知の方がいらっしゃいましたら教えていただけないでしょうか。 このような感じで書きました。 my $cgi = CGI::new(); my $area = $cgi->param('text'); print "Content-type: text/html\n\n"; print $area;

    • ベストアンサー
    • CGI
  • フォームのインプットフィールド内の改行について

    HTML、ASP、Accessを使い、掲示板を作成しています。 インプットフォームで得たデータをAccessのdbに書き込みます。 すでに書き込まれた内容を掲示板に表示する際に、入力されたときの改行も反映させたいのですがうまくいきません。書き込みページに<br>タグを入れてもらうと表示上で改行できますが。設定上で同じような結果を出したいのですが、いい方法ありますか? お願い致します。 (この入力フィールドはまさに改行が反映されてますが、この質問書き込みページのようにしたいのです・・・)

  • textareaで改行すると、修正時、書き込んだデータがなくなります。

    CGIのカスタマイズに関する質問です。 ソードワールドRPGキャラクターシート管理CGIを使用しています。 初期の設定で<input type>と<textarea>の改行をする際は<br>を使うと言う形になっています。 その中で<textarea>の改行をエンターキーでしたいと思い、 sub htmlunquote{ my $text = shift; $$text =~ s/&lt;/</g; $$text =~ s/&gt;/>/g; の部分を sub htmlunquote{     my $text = shift; $$text1 =~ s/\r\n/<br>/g; $$text1 =~ s/\r/<br>/g; $$text1 =~ s/\n/<br>/g; と変換してみました。 すると、エンターキーで改行できるようになったのですが、修正や追記しようとすると、何故か前に書き込んだ文章が消えてしまっています。 なぜ、文章が消えてしまうのか、全く検討がつきません。FFFTPから、データを覗くと、書き込まれたデータはあるのですが……。 それとも改行をさせる方法が根本的に間違っているのでしょうか。 ご教授お願いいたします。

    • ベストアンサー
    • CGI
  • Firefoxでのテキストエリアに入力した文字の改行

    Firefoxでのテキストエリアに入力した文字の改行について質問させてください。 http://oshiete1.goo.ne.jp/qa2691799.html ↑のページを参考にテキストエリアに入力したテキストがリアルタイムで確認できるページを作成しました。 IEではテキストエリア内の改行がちゃんと反映されたのですが、Firefoxではテキストエリア内の改行が反映されずに、エンターキーを押すと半角スペース?になるだけで一連の文として出力されてしまいます。 どなたかこの現象の解決策をお知りの方がいらっしゃいましたらご教授ください。 よろしくお願いします。

  • textarea形式のフォームで複数行入力したテキストデータを保存すると、複数行のデータができてしまう現象を回避する方法

    「テキストファイルのデータを読み込み、html画面のフォームに表示させ、データを修正後、元のテキストファイルに書き戻す」というCGIを作成中です。 テキストファイルのデータの並びは決まっていて、例えば3番目のデータが「名前」4番目のデータが「住所」だったりします。 ここで、複数行の入力が必要なフィールドをが必要となり、"textarea"形式のフォームを設定したところ、複数行のインプットをすると、テキストファイルにも複数のデータができてしまいました。2行のデータをインプットすると、データも2行になってしまい、後のデータがずれてしまいます。 そこで「複数行のテキストデータを、改行マークをつけたまま、1行のデータとして保存し、読み込んでtextarea 形式のフォームに表示させるときは、改行されて表示する」という処理が実現できるよう、時間をかけて調べておりますが未だ判らない状態です。  ご存じの方がいらっしゃいましたら是非教えて頂きたく、宜しくお願いいたします。

    • ベストアンサー
    • CGI
  • textareでの改行

    ホームページ上のtextareaで入力してもらった情報を取得するCGI(perl)スクリプトを書いています。流れとしては,フォーム上で入力した情報をCGIで取得→確認画面を表示→問題無ければメールフォームとして送信,となっています。 このスクリプト上で問題となっているのが,textareaでは自動的に改行処理(wrap=softと同じ?xhtmlで書いているので,wrap属性は指定していません。)するときに入力される改行コードと,入力者が意図的に入力する改行コードを判別出来ないということです。自動的に挿入される\n(0x0A)を削除しようとスクリプト上で, $text =~s/\r\n/\n/g; $text =~s/\r/\n/g; $text =~s/\n//g; と入れたところ,全ての改行コードが変換処理されてしまい,入力者が意図的に入れた改行コードまで処理されてしまいます。 スクリプト上,もしくはxhtmlと組み合わせて,自動的に挿入される改行コードだけを消去して,意図的に入力した改行コードだけを残す処理は出来ないものでしょうか? phpなどを使うと出来るようですが,ある程度perlのcgiで作成してしまったので,このままで出来ればと思っています。よろしくお願いします。

  • フォームメールの入力チェック

    HTML側にJavaScriptでチェックを行うのではなく、 nameの値の前にアンダーバーを付けて、cgi側で入力チェックをいたいと思っています。 <input type="text" name="_email">としておけば、 メールアドレスが入力されていなければエラーになります。 これをselect の場合<select name="_time">としてもチェックがかからないのは何故でしょうか? もちろん、option value のdefaultはblankにしてあります。ここで、いづれかのoption value を選ばないと 入力チェックがかかるようにしたいのです。 初歩的な質問で申し訳ありませんが、よろしくお願い致します。

    • ベストアンサー
    • HTML
  • 携帯でフォームに入力するとき自動的に数字入力にするには?

    携帯のフォームにて、電話番号を入力するときに、そこのテキストボックスにカーソルをあわせると、いままではひらがな入力だったのが、自動的に数字入力になるようにしたいのですが、なにかいい方法ありますか?javascriptでできそうかなあっておもったんですけど、携帯なのでjavascriptは使えません。。。 CGIでうまくやる方法ありませんか? できればperlで記述したいですが(できればというか本当はperlしかわかりません^^) なにかうまくやる方法ありませんか?ぜひともご教授のほどよろしくお願いいたします。

    • ベストアンサー
    • CGI
  • name属性が同じフォームが複数ある場合の入力チェック

    よろしくお願い致します。 表題の通りなのですが、「<input type="text" name="amount">」のような、name属性が同じテキストフォームが3つ(同様のページが複数あり、ページによっては最大10個くらいあります)あります。 テキストフォームの初期値は「0」になっており、CGIにデータを送る際、3つのフォームのうちどれかが「0」以外の数字であれば(1以上)データを送ることができ、すべてのフォームが「0」であればアラートを出して再入力してもらうようにいたいのですが、この場合、どのようなスクリプトを書けばよいのでしょうか? 分かりずらい部分は補足説明致しますので、どうぞご教授下さいますようお願い致します。

  • 文末のスペース(改行)

    ●1回目 ログファイルからランダムに1行分を表示する。 その下にテキストボックスを表示し、入力を促す。 ●2回目 さきほど入力されたものと表示されたものがあっているかどうかを確認し、分岐 というような流れのcgiを作成しました。 ログファイルから持ってきたものが、改行が入っているため、半角スペースが入っています。 なので、 chomp $FORM{'KEYWORD1'}; として、改行を削除しました。 ローカルの時点ではうまくいっていたのですが、アップロードすると、改行が消えていません。 改行を削除するのはchompでは駄目なのでしょうか?

    • ベストアンサー
    • Perl