PHP と Javascript アラート ボックスを使用して、登録検証システム (登録されたユーザーが有効な情報を持っていることを確認するため) を作成したいと考えていました。ユーザーがフィールドを正しく実行しないたびに、それが間違っていることを示す警告ボックスが表示されるようにします。だからここにあります:
コード #1 - PHP でアラートを生成するため (これはボタンのイベント用です)。
function alert($string)
{
echo "javascript:alert('$string');";
}
コード 2onclick=""
-送信ボタンの属性内に配置された PHP 。
if (!isset($fname) || empty($fname))
{
alert('Please enter your first name!');
}
elseif (!isset($lname) || empty($lname))
{
alert('Please enter your last name!');
}
elseif (!isset($gender) || empty($gender))
{
alert('Please specify your gender!');
}
elseif (!isset($phone) || empty($phone) || strlen($phone) != 10)
{
alert('Please enter your correct Phone Number!');
}
elseif (!isset($user) || empty($user) || strlen($user) > 10 || strlen($user) < 5)
{
alert('Please enter a Username that is 5-10 characters long!');
}
elseif (!isset($pass) || empty($pass) || strlen($pass) > 10 || strlen($pass) < 5)
{
alert('Please enter a Password that is 5-10 characters long!');
}
elseif (!isset($repass) || empty($repass) || $pass != $repass)
{
alert('Please repeat your Password');
}
else
{
$query = mysql_query($query_send_form);
query_error($query);
}
お気づきかもしれませんが、変数は実際$_POST
にはフォーム内のフィールドの値と同じです。
したがって、問題は、ボタンの onclick が常に同じであるというonclick="
javascript:alert('Please enter your first name!');"
ことです。変更されません。
システムに代わる完全な javascript を提供しないでください。とりあえず PHP を学びたいのです。
事前にご協力いただきありがとうございます。
編集#1
忘れていた重要な点は、フォーム ターゲットは同じページの iframe にすぎないため、ユーザーが入力したコンテンツはエラーが表示されている間も保持されるということです。
<form method="post" target="frame" action="register.php">
register.php
フォーム HTML と検証 PHP があるページと同じです。
編集#2
データ掲載中です。宣言された変数は次のとおりです。
@$fname = $_POST['fname'];
@$lname = $_POST['lname'];
@$gender = $_POST['gender'];
@$phone = $_POST['phone'];
@$user = $_POST['user'];
@$pass = $_POST['pass'];
@$repass = $_POST['repass'];