PHP $POST If statement


PHP $POST If statement

好的,所以我遇到的问题是,我有一个简单的文本区,应该发送什么是输入到另一个页面,它应该说'谢谢'提交时,应该提示输入,如果没有输入,然而,当我输入什么,它仍然说'谢谢'

我相信它会足够简单。下面是我的index.php

的代码
<form method="POST" action="translate.php">
<name="status" cols="50" rows="5">
What's on your mind?
</textarea><br>
<input type="submit" value="Translate my Status" />

和我的翻译。php

<?php
$status = $_POST['status'];
if($status == ""){
echo "Please enter a status.";
}
else {
echo "Thanks";
}
?>

我已经尝试使用上面的代码在我的index.php,但得到一个错误的'状态'变量。

当我问,我怎么去有一个弹出错误的主页,而不是它重定向到翻译。php

1。你忘了写textarea

<textarea name="status" cols="50" rows="5">
What's on your mind?
</textarea><br>

2。Textarea将What's on your mind?作为默认值。所以你应该检查…

if(($status == "") || ($status == "What's on your mind?"))

3。尝试echo $status看看它实际上包含什么?

 <form name="frm" method="POST" action="translate.php">
 <script language="javascript">
 function submitData()
 {
       if(document.frm.status.value == "")
          alert("Please enter a status.");
       else
          frm.submit();
 }
 </script>
 What's on your mind?
 <textarea name="status" cols="50" rows="5"></textarea><br>
 <input type="button" value="Translate my Status" onclick="submitData()"/>
 </form>

if语句不合适,它实际上没有做您期望的事情。这是你的代码更新:

<form method="POST" action="translate.php">
<textarea name="status" cols="50" rows="5">
What's on your mind?
</textarea><br>
<input type="submit" value="Translate my Status" />
</form>

和你的translate.php

<?php
$status = $_POST['status'];
if(isset($status) && strlen($status)>0){
echo "Thanks";
}
else {
echo "Please enter a status.";
}
?>

<textarea name="status" cols="50" rows="5">不是更好吗?

你还为文本区设置了一个值,所以如果你没有删除"What's on your mind?",这意味着你正在通过状态发送该值,因此,它不是空的。

如果删除该值后仍然显示"Thanks",则可能存在其他问题。