このコードは、最後まで実行され、条件が満たされなくても送信します。私はそれが実行されるのを止めて、どんな条件も見逃してしまうとエラーをエコーしたい。親切に助けてください。注:exit()を試してみたところ、html全体の実行に影響がありました。あなたがしなければならない場合単一の条件が満たされない場合、このコードの実行を停止する方法PHP
$verifiedPhone = phoneNumberValidator($phone);
$correctsurname = nameValidator($surname);
$correctlastname = nameValidator($lastname);
$correctusername = nameValidator($username);
if(!$verifiedPhone){
echo "<p class='alert alert-warning'>Please use a Valid Phone Number</p>";
}
if(!$correctsurname){
echo "<p class='alert alert-warning'>Surname can only contain alphabets</p>";
}
if(!$correctlastname) {
echo "<p class='alert alert-warning'>Last Name can only contain alphabets</p>";
}
if (!$correctusername) {
echo "<p class='alert alert-warning'>Username can only contain alphabets</p>";
}
$checkuser = " SELECT * FROM staff
WHERE username = '$correctusername'";
$checkuserresult = mysqli_query($connection, $checkuser);
$checkuserrow = mysqli_num_rows($checkuserresult);
if($checkuserrow > 0){
echo "<p class='alert alert-danger'>Username \"".$username."\" already exist! Try another</p>";
}
else{
$harsedpassword = md5("$password");
$datainsert = " INSERT INTO staff (surname, lastname, phone, username, password) VALUES ('$correctsurname', '$correctlastname', '$verifiedPhone', '$username','$harsedpassword')";
$datainsertresult = mysqli_query($connection, $datainsert);
if($datainsertresult){
echo "<p class='alert alert-success'><b>Staff Added Successfully</b></p>";
}
使用フラグ変数。条件が満たされないときに切り替えます。アクションを実行する前にそのフラグ変数を確認してください(例:db inserts)。 –
ありがとうございました。私は、フラグ変数の意味とその切り替え方法を理解していません。私はPHPの新しい赤ちゃんです。 –
'$ flag = false; if(!$ correctusername){echo ...; $ flag = true; } ... more if ... .... if(!$ flag){...データを挿入...} ' –