我需要基于php表单中的输入的特定输出
我需要根据用户的输入显示特定的文本 例如:如果用户输入橙色,我需要输出为橙色,橙色有利于健康, 如果输入是苹果,我希望它是苹果是红色的 抱歉,如果问题太简单,我对php非常陌生 我的html代码:我需要基于php表单中的输入的特定输出,php,html,Php,Html,我需要根据用户的输入显示特定的文本 例如:如果用户输入橙色,我需要输出为橙色,橙色有利于健康, 如果输入是苹果,我希望它是苹果是红色的 抱歉,如果问题太简单,我对php非常陌生 我的html代码: <form method="post" action="tips.php" style="float: left; margin: 25px; font-size:300%;"> Name: <input type=
<form method="post" action="tips.php" style="float: left; margin: 25px; font-size:300%;">
Name: <input type="text" name="name">
<br><br>
<center><input type="submit"></div></center>
</form>
姓名:
我的php代码:
<?php
$t = echo $_POST["name"];
if ($t =="Apple") {
echo "Apples are red";
}
if ($t =="Oranges") {
echo "Oranges are good";
}
?>
echo
函数返回类型无效,从逻辑上讲,从$\u POST
<?php
header('Content-Type: text/plain'); // set correct mime-type
$name = $_POST["name"];
if ($name =="Apple") {
echo "Apples are red";
}
elif ($name =="Oranges") {
echo "Oranges are good";
}
else {
// Always send back some response:
echo "I did not recognize your input.";
}
如前所述,echo
返回void(未返回任何内容),这意味着您将$t
分配给了nothing。从变量赋值中删除echo
$t=$\u POST['name']代码>
此外,最好使用可理解的变量名,字母t对我来说没有太多意义,而是按照建议使用例如$name
$name=$\u POST['name']代码>
此外,您要多次检查相同的值,最好是这样
switch($name) {
case 'Apple':
echo "Apples are red";
break;
case 'Oranges':
echo "Oranges are good";
break;
default:
echo "You entered something else";
break;
}
您不需要那里的echo
。只需将变量$t
设置为POST值$t=$\u POST['name']
$t=echo$\u POST[“name”];=>$t=$_POST[“name”];您应该添加一个标题('Content-Type:text/plain')在第一个if
语句之前的code>语句,并解释为什么。POST或GET,是否由他修改?我可以把它放在一个if语句中,但这意味着修改他的问题的上下文。真的不知道为什么我们需要显式地设置它。返回的不是有效的HTML文档,而是纯文本。如果没有我建议的显式header语句,PHP将返回一个mime类型为“text/html”的header,它与实际输出不匹配。还可以指出代码中的其他错误,例如OP应该使用if-else语句。