好吧,我所遇到的问题是我有一个简单的textarea应该将输入的内容发送到另一个页面,它应该在提交时说“Thanks”,如果没有输入则应该提示输入,但是,当我没有输入它仍然说'谢谢'
我相信它会很简单。这是我的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" />
和我的translate.php
<?php
$status = $_POST['status'];
if($status == ""){
echo "Please enter a status.";
}
else {
echo "Thanks";
}
?>
我尝试在index.php中使用上面的代码,但是'status'变量出错。
我问的是,我怎么会在主页上出现弹出错误,而不是重定向到translate.php
答案 0 :(得分:2)
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
以查看它实际包含的内容?
答案 1 :(得分:1)
<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>
答案 2 :(得分:1)
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.";
}
?>
答案 3 :(得分:0)
使用<textarea name="status" cols="50" rows="5">
会不会更好。
您还为textarea设置了一个值,因此如果您不删除“您在想什么?”,则表示您通过状态发送该值,因此它不为空。
如果删除该值时仍显示“谢谢”,则可能还有其他问题。