【发布时间】:2017-11-09 14:42:35
【问题描述】:
我是 PHP 自定义函数的新手。我正在使用书中的以下功能来验证电子邮件地址:
<?php
$email = $_POST['email'];
function is_email($email) {
// Checks for proper email format
if (!preg_match('/^[A-Za-z0-9!#$%&\'*+-/=?ˆ_`{|}~]+@[A-Za-z0-9]+(\.[A-Za-z0-9]+)+[A-Za-z]%/', $email))
{
return false;
}
else
{
return true;
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>Validate Email</title>
</head>
<body>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
Email<input type="text" name="email"></input>
<input type="submit" value="Send">
</form>
</body>
</html>
现在,如果电子邮件正确,我想显示一条消息,如果它不正确,我想显示一条消息。我真的不知道下一步该做什么。在 ?> 结束标记之前,我已经尝试过以下操作:
if (is_email($email) == true) {
echo "Right";
}
elseif (is_email($email) == false) {
echo "Wrong";
}
但这并没有做任何事情。有什么办法解决这个问题?
【问题讨论】:
-
抱歉,这样的问题很难回答。缺少很多细节,我们不知道您的真实设置。我建议你试着找出自己是怎么回事。这并不难,它将帮助您了解 php 脚本在 Web 环境中是如何工作的。试试这个:当你点击提交按钮时,会发生什么?一步又一步。尝试通过将调试输出添加到日志文件中来显示每个步骤。
-
您是关于验证电子邮件地址的问题还是关于 PHP 的打印变量的问题?
-
不,更多如何显示电子邮件格式是否正确
-
正则表达式末尾的 % 看起来很可疑,反正我宁愿看到 $ 那里
标签: php