現在perlを使ってCGIに挑戦しています。
アンケート用紙のようなフォームを作りそこに
文字を入力してもうらうプログラムを作成しています。
そこで質問なのですが、アンケート用紙のような物に文字を入力してもらってオーケーボタン
を押した時に、必ず入力してもらいたい所の入力漏れ注意や数字を入れてもらう所をかな入力で入れている人に注意をうながすようなサンプルを探していますがなかなか見つかりません。
どうかそのような本、ホームページ等、又それに関する資料等ありましたらどうかおしえていただけませんでしょうか?
どうかよろしくお願いします。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
deiaっす。
とりあえずは下記のようなものでいかがでしょう?
項目は名前とメールアドレスだけなのでお好みに合わせていじくりまくりましょう。(^_^)!!
あとform actionの指定忘れずに。
それではがんばってください。
<html>
<head>
<title>フォーム</title>
<SCRIPT LANGUAGE="JavaScript">
<!---
function Check(){
if (document.forma.name.value==""){
window.alert("名前が記入されていません。");
return false
}
if (document.forma.mail.value==""){
window.alert("メールアドレスを入力してください。");
return false ;
}
else if(document.forma.mail.value.indexOf("@",0)<=0){
window.alert("メールアドレスが間違っています。");
return false;}
return confirm("以下の内容で送信します。 \n\n名前:"+document.forma.name.value+"\nメールアドレス:"+document.forma.name.value+"\n\nよろしいですか?");
return true;}
//--->
</SCRIPT>
</head>
<body>
<form name="forma" method="post" action="" onSubmit="return Check()">
名前:<input type="text" size="40" name="name"><br>
メールアドレス:<input type="text" size="40" name="mail"><br>
<input type="submit" value="送る">
<input type ="reset" value="リセット">
</form>
</body>
</html>
No.3
- 回答日時:
再びdeiaです。
>本の情報ですが、ジャバを使うとエラーメッセージが出せるもののそれを無視して通過する事ができると書いてあったのでCGIで作るしかないのかなと思ったのです。
どの本の情報か知りませんが、JavaScriptでもエラーメッセージを無視して通過するなどと言うことは全く無いと思います。(作り方にもよるかもしれないけど、そんな変な作り方する人いないと思うし。)
何かあればまた補足に追加してください。では!!!
それであればジャバで作ったほうが良いと思います。
deiaさんがお勧めするジャバソースをしていましたらおしえていただけませんでしょうか?
どうぞよろしくお願い致します。
No.2
- 回答日時:
JavaScriptの方が簡単ですが、Perlでということであれば以下の方法でどうでしょうか。
まずHTML側ですが、
フォームの入力部分は
<INPUT TYPE="text" NAME="お名前">
<INPUT TYPE="text" NAME="電話番号">
<INPUT TYPE="text" NAME="住所">
といった感じで記述されているとします。
入力必須にしたい項目を
<INPUT TYPE="hidden" NAME="required" VALUE="お名前:住所">
のようにTYPE="hidden"、NAME="required"、VALUE="必須にしたい項目名:必須にしたい項目名(…以下同じ)"
としてあげます。
次にPerlですが、
おそらく読み取ったデータを配列にセットされていると思いますので上記hiddenで渡されたNAME="required"の部分を@requiredにセットする別処理を加えてあげます。
@pairs = split(/&/,$buffer);
foreach $pair (@pairs) {
($name,$value) = split(/=/,$pair);
if ($name eq "required") { @required = split(/:/,$value); }
else { push(@data_name,$name); push(@data_value,$value); }
}
なお、上の処理は日本語等の処理の部分は省いてあります。
その下で以下のようにチェック処理をしてあげればOKです。
$count = @data_name;
foreach $required (@required) {
foreach (0..$count-1) {
if ($data_name[($_)] eq $required && $data_value[($_)] eq "") { ※エラー時の処理;}
}
}
あまりスマートなやり方ではありませんが、一応動きます。
参考になれば幸いです。
No.1
- 回答日時:
CGIじゃなくてもJavascriptを使った方が手軽で簡単に出来ると思います。
がperlでという事なので定番のこちらのサイトで自分なりに勉強してみては・・・。
正規表現などが理解できていれば、perlでも簡単に出来ると思います。
ではがんばってください。
参考URL:http://tohoho.wakusei.ne.jp/www.htm
回答頂き本当に助かります。
本の情報ですが、ジャバを使うとエラーメッセージが出せるもののそれを無視して通過する事ができると書いてあったのでCGIで作るしかないのかなと思ったのです。
そこらへんは作り方によって大丈夫になるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel 記入欄に網掛けして、文字が入力されたら網掛けが消える設定 5 2023/02/05 11:00
- C言語・C++・C# [C言語] コメント文字列を無視して、数値データを読み込むプログラム部分について 5 2022/10/05 11:03
- JavaScript HTMLでJavaScriptを使用してプログラムを作ります。 入力されたパスワードを取得して、パス 2 2022/10/18 01:05
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- その他(プログラミング・Web制作) 入力フォームへ、データを自動的に入力するプログラム。どうやって作る? 4 2023/01/16 10:24
- Excel(エクセル) エクセルでセルに何らかの文字が入力されたらそれを任意の数値として認識させる方法がしりたいです。 3 2023/03/16 20:19
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- Visual Basic(VBA) 【再々投稿】VBAのプログラムで動作しなくて困っています 8 2022/10/14 09:06
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
pythonでDBのカラム名で取得し...
-
matlabのソースコードをpython...
-
エクセルVBA:日付データの変換...
-
C言語の構造体にてバブルソート...
-
データの値の近いものをグルー...
-
printfの%eで指数部分の桁数を...
-
テキストファイルの結合について
-
パイソン、データーサイエンス...
-
POSTで配列のデータを渡す方法は?
-
基本クラスのポインタから、特...
-
オセロゲーム 2次元配列で困...
-
花の名前を教えて下さい。
-
途中経過も表示するプログラム
-
python 気象データの取得
-
UTF-8で5~6バイトになる文字コ...
-
COBOLのCOMP形式について
-
ビットスワップとバイトスワッ...
-
エクセルシート名の制限を変更...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ポインター引数の関数でコンパ...
-
stable diffusionのエラー
-
printfの%eで指数部分の桁数を...
-
エクセルVBA:日付データの変換...
-
int型(2バイト)データの分割
-
c言語の多次元配列で1から100ま...
-
C#でのswitch文
-
【Excel VBA】10進数を2進数に...
-
途中経過も表示するプログラム
-
CreateProcessでの環境変数の設...
-
pythonでDBのカラム名で取得し...
-
C言語についてです! 同じ年の...
-
linuxのシェルでファイル名に先...
-
c言語 配列から数字だけをint型...
-
c言語での wavファイルの編集(...
-
matlabのソースコードをpython...
-
ビットデータのチェック方法
-
10個の実数に対する降順ソート...
-
python 気象データの取得
-
C言語の構造体にてバブルソート...
おすすめ情報