我的PHP脚本看起来应该可以工作,那么为什么';不是吗?
我正在为我的网站制作一个留言簿。我现在有一个基本的HTML表单:我的PHP脚本看起来应该可以工作,那么为什么';不是吗?,php,Php,我正在为我的网站制作一个留言簿。我现在有一个基本的HTML表单: <form action="submit.php" method="post"> Name: <input type="text" value="Julian Davis" name="name"readonly><br> E-mail (Not published) <input type="text" name="email"><br> Message:
<form action="submit.php" method="post">
Name: <input type="text" value="Julian Davis" name="name"readonly><br>
E-mail (Not published) <input type="text" name="email"><br>
Message: <input name="message" rows="5" cols="40"><br>
<input type="submit">
</form>
名称:
电子邮件(未发布)
信息:
(只读的名称字段是gag的一部分)。它使用HTTP POST将结果发送到submit.php,如下所示:
<?php
if strlen($_POST["message"]) = 0 {
echo "You didn\'t type a message. Don't you want people to hear
what you have to say?";
}
else if strlen($_POST["message"]) > 499 {
echo "Messages are limited to 500 characters. Try again.";
}
else{
echo "Your response has been received. Cheers!";
}
?>
许多问题:
<?php
if (strlen($_POST["message"]) == 0) {
echo "You didn\'t type a message. Don't you want people to hear what you have to say?";
}
elseif (strlen($_POST["message"]) > 499) {
echo "Messages are limited to 500 characters. Try again.";
}
else {
echo "Your response has been received. Cheers!";
}
?>
所有语句中都应该包含(…)
,整个语法都是错误的!学好PHP
if (expr)
statement
第一个应该是=
,而不是=
有很多问题可以回答这个问题。看
=
是赋值运算符。这意味着,将为左侧变量分配一个新值
==
是您需要的,它是一个比较运算符。检查左侧和右侧是否相等
=
是严格的比较运算符,它检查数据的值和类型
如果
,最好使用而不是
如评论中所述,请注意,仅当使用上述示例中的花括号时,elseif和elseif才会被视为完全相同。使用冒号定义if/elseif条件时,不能将else if分隔为两个单词,否则PHP将因解析错误而失败。”
更正代码:
<?php
if (strlen($_POST["message"]) == 0) {
echo "You didn\'t type a message. Don't you want people to hear what you have to say?";
}
elseif (strlen($_POST["message"]) > 499) {
echo "Messages are limited to 500 characters. Try again.";
}
else {
echo "Your response has been received. Cheers!";
}
?>
您在第一个条件语句中赋值。在if
中,您缺少围绕条件的括号。您不是从代码中得到语法错误吗?不使用此命令,显然@Darragh可能是我一整天看到的最有用的PHP命令。“如果“-”,最好使用elseif而不是elseif”注意:请注意,仅当使用上述示例中的花括号时,elseif和elseif才会被视为完全相同。当使用冒号定义if/elseif条件时,不能将else if分隔为两个单词,否则PHP将因解析错误而失败。“@Fred ii-好吧,那很好。我们在这里使用大括号,对吗?此外,我要求OP仅使用elseif
。它们当然是。这只是未来访问者的旁注。然而,”第一个应该是=
,而不是=
“如果我的评论恰好消失了,添加他们是分配而不是比较的事实将改进答案;-)做得很好,干杯,没问题。我可能认为我错了。我自己有时确实喜欢使用较大的按钮来输入某些内容。但在这种情况下,很明显他们应该/想要使用
,给定“消息”。要写出一条长消息作为输入是很困难的。哎呀!
<textarea rows="4" cols="50">
<input type="text" name="input_name" maxlength="4" size="4">