好的,所以我遇到的问题是,我有一个简单的文本区,应该发送什么是输入到另一个页面,它应该说'谢谢'提交时,应该提示输入,如果没有输入,然而,当我输入什么,它仍然说'谢谢'
我相信它会足够简单。下面是我的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",则可能存在其他问题。