首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Textarea在PHP POST中返回空值

Textarea在PHP POST中返回空值
EN

Stack Overflow用户
提问于 2015-09-30 04:50:49
回答 4查看 3.7K关注 0票数 0

我面临的问题,在textarea内容发布通过PHP。我有一个表单,它提交两个值,一个在textarea中,一个在其他单选按钮中。在提交单选按钮时,会张贴值,但textarea值显示为空。

为什么会发生这种事?任何建议都将不胜感激..。

我的HTML代码片段

代码语言:javascript
复制
<form action="" method="post" id="register_form">
<h2><img class="small_image" src="images/rsz_heart.png">Describe 
Yourself<img class="small_image" src="images/heart.png"></h2>
<table id="register_table">
<tr>
<td>Describe Yourself</td>
<td>
<textarea id="description" type="textarea" name="description" rows="5" 
cols="40" class="textbox" form="register_form" required>type</textarea>
</td>
</tr>
<tr>
<td>Any disability</td>
<td>
<input type="radio" name="disability" value="none" selected="selected">None
<input type="radio" name="disability" value="physicaldisability">Physical 
Disability
</td>
</tr>
<tr>
<td colspan=2>
<input type="submit" name="submit" value="Submit" class="button" >
</td>
</tr>
</table>
</form>

我的PHP代码是

代码语言:javascript
复制
if(isset($_REQUEST["submit"]))
{  
$description = $_POST["description"];
$disability = $_POST["disability"];
$email = $_GET["email"];
$sql = "update Registration_members set Description_self='$description', 
Disability='$disability' where Email='$email'";
$res = mysql_query($sql);
if($res)
{
?>
<script>
alert("You have registered successfully!!");
</script>
<?
echo $description." is description";
echo $disability." is disability";
}
}
?>

在它写的输出中

代码语言:javascript
复制
 is description
none is disability
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-09-30 05:09:43

对代码的一些编辑可以解决您的问题:

1)始终使用<?php作为启动PHP标记。您只在代码中的一个位置使用了<?。改变一下。

2)将isset($_REQUEST["submit"])更改为isset($_POST["submit"])

3)将type="textarea"<textarea>中删除

4)打开和关闭PHP标记时要小心。在您的示例中,您在if(isset($_REQUEST["submit"])) {之后关闭了PHP标记,这是错误的。

票数 1
EN

Stack Overflow用户

发布于 2015-09-30 04:54:54

您正在过早地关闭php标记。

票数 0
EN

Stack Overflow用户

发布于 2015-09-30 04:57:13

您需要一个打开的<?php标记,否则您的代码不会被解释为PHP。

在你问题的原始版本中,在你的第三行,你有?>。这将关闭PHP块,并意味着下一个代码块将被视为普通HTML。所以它从来没有被评估过。删除那一行。

在这一点上,在后面的代码中,您应该使用<?php而不是<?来启动一个新的PHP代码块。

另外,请使用mysql_*mysql_*函数已经过时,已弃用和不安全。使用MySQLiPDO代替。最重要的是,您对SQL注入非常开放。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32858035

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档