gpt4 book ai didi

PHP - strlen 不工作

转载 作者:可可西里 更新时间:2023-11-01 00:24:48 24 4
gpt4 key购买 nike

在 Register.php 中,它包含一个表单。

<html>
<body>

<form action="Insert.php" method="post">
Email: <input type="text" name="email" /><br/>
Username: <input type="text" name="username" /><br/>
<input type="submit" name="Send Registration" value="Send Registration"/>
</form>

</body>
</html>

在 Insert.php 中,它包含执行一些验证的代码。

<?php

if(!filter_var($_POST[email], FILTER_VALIDATE_EMAIL))
{
exit("E-mail is not valid");
}
else
{
if(!strlen($_POST[username])>=6)
{
exit("Username should be at least 6 characters");
}
else
{
// Continue other validations
}
}

?>

当我输入无效的电子邮件地址并单击“发送注册”时,它会显示错误消息“电子邮件无效”。因此,我尝试输入一个有效的电子邮件地址,并在用户名字段中输入 5 个或更少的字符,然后单击“发送注册”。但它不显示错误消息。

我可以知道我的代码有什么问题吗?
抱歉,我是编程和 php 的初学者。
提前致谢!

最佳答案

你的逻辑是错误的:

if(!strlen($_POST[username])>=6)

替换为: *还要注意变量中的'字符(!否定符被替换为小于,双重否定,这个更容易理解,如果你要看很多代码,你可能会错过“!”

if (strlen($_POST['username'])<6)

希望这对您有所帮助。

您可能还需要考虑以下事项:删除“insert.php”并将代码从 THAT 放入与表单相同的页面中。你可以这样做:

表格:<form method="post" action="'.$self.'">

(放在页面顶部的 PHP 括号内)

$self   = $_SERVER['PHP_SELF'];
$username = $_GET['username'];
$email = $_GET['email'];

这取决于您希望如何设置它,使用 POST 或 GET,我无法告诉您使用哪个。

从这里,您可以操作您的变量等等。

关于PHP - strlen 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9107034/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com