[PHP-users 1789] Re: 様々な入力でもOK
BosProject T.Takeuchi
php-users@php.gr.jp
Tue, 4 Sep 2001 20:03:53 +0900
汎用的なスクリプトを目指すなら、こういう方法はいかがでしょうか。
[必須の場合、nameのパラメータ末尾に _ を付ける]
名前:<input type='text' name='data[名前_]'>
[必須でない場合、パラメータをそのまま使う]
郵便番号:<input type='text' name='data[郵便番号]'>
while(list($key,$val) = each($data)){
// 必須項目が未記入の場合
if(ereg("(.+)_$",$key) && $val == ''){
$empty[$key] = $val;
}
// 必須項目が正しく入力されている場合
else if(ereg("(.+)_$",$key,$match)){
$ereg_key = $match[1];
$input[$ereg_key] = $val;
}
// 任意項目の場合
else{
$input[$key] = $val;
}
}
// 必須項目に記入漏れがある場合、未記入項目名を,で連結して表示
if(count($empty)){
$empty_data = join(",",$empty);
echo "${empty_data}が未入力です。\n";
exit;
}
// 確認画面の表示
else{
echo "入力内容を確認して下さい。<br>\n";
while(list($key,$val) = each($input)){
echo "$key : $val\n";
echo "<input type='hidden' name='data[$key]' value='$val'><br>\n";
}
}
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
合資会社ボスプロジェクト
竹内 輝明 webmaster@bos-project.com
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
>