У меня есть проверка isset в php, когда операторы if проверяют, не вернули ли различные функции false. Дело в том, что он не выходит после первого ложного возврата.
Я уверен, что мне не хватает чего-то базового в синтаксисе php.
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$email2 = $_POST['email2'];
function nameCheck($name)
{
if (strlen($name)<1 || strlen($name)>40)
{
return false;
}
else
{
return true;
}
}
function emailCheck($email)
{
$regex = "/^[*\w]{1,25}+@[*\w]{1,20}+\.[*\w]{1,10}$/";
if (preg_match($regex, $email))
{
return true;
}
}
function emailMatch($email, $email2)
{
if ($email === $email2)
{
return true;
}
else
{
return false;
}
}
if (isset($_POST['submit']))
{
if (!nameCheck($name))
{
echo '<script type="text/javascript"> alert("Fail name!")</script>';
return false;
}
elseif (!emailCheck($email))
{
echo '<script type="text/javascript"> alert("Fail email check!")</script>';
return false;
}
elseif (!emailMatch($email,$email2))
{
echo '<script type="text/javascript"> alert("Fail email match!")</script>';
return false;
}
else
{
mail ("[email protected]", "this", "message");
echo '<script type="text/javascript"> alert("Success!")</script>';
}
}
?>
Я использую окна предупреждений для ввода кода. Появится не только каждое окно предупреждения, но даже окно успеха! Что я делаю не так? TX
Это всего лишь код, с которым я играю, чтобы подготовиться к экзамену. На самом деле мне не нужно использовать его на веб-сайте, так что это просто практика.
return truel;
это опечатка? - person andrewsi   schedule 21.11.2013return
, что он должен делать? Нет функции вызова, к которой он мог бы вернуться. - person andrewsi   schedule 21.11.2013return
наdie
: это должен сделатьif (! nameCheck) { die('<script...'); }
. - person andrewsi   schedule 21.11.2013