我遇到了在PHP中获取文本区域值的问题(未定义)。
我的代码非常简单。 我的HTML是:
<form name="contactform" method="POST" action="submit_form.php">
<input type="text" class="formInput" placeholder="Your Name" id="first_name" maxlength="50" size="20" />
<input type="text" class="formInput" placeholder="Email Address" id="email" maxlength="80" size="20" />
<textarea class="formInput" placeholder="Your Message" name="comments" id="comments" maxlength="1400" cols="20" rows="6"></textarea>
<input type="submit" id="SubmitContactForm" class="myButton" value="Submit" />
</form>
我的PHP:
echo $_POST['comments'];
无论我在textarea中写什么,都会产生undefined
。我在这里搜索了一些解决方案并找到了一些东西,比如添加“name”和“id”并使它们不同,添加htmlspecialchars($_POST['comments'])
等等,所有这些解决方案都不起作用。我会做一个说明并说我可以毫无问题地得到其他字段值,只是这个textarea。
任何想法可能是什么问题?
答案 0 :(得分:1)
您尚未为textarea定义name-attribute。
添加:name="comments"
到它:
<textarea class="formInput" name="comments" placeholder="Your Message" id="comments" maxlength="1400" cols="20" rows="6"></textarea>
如果仍未显示,请确保使用method="post"
答案 1 :(得分:1)
您需要在textarea中使用name属性 名称= “评论”
<textarea class="formInput" placeholder="Your Message" id="comments" name="comments" maxlength="1400" cols="20" rows="6"></textarea>
答案 2 :(得分:0)
您忘记添加name属性。你的HTML应该是这样的
<textarea name="comments" class="formInput" placeholder="Your Message" id="comments" maxlength="1400" cols="20" rows="6"></textarea>
答案 3 :(得分:0)
<textarea class="formInput" placeholder="Your Message" id="comments" maxlength="1400" cols="20" rows="6" name="yourtextarea"></textarea>
答案 4 :(得分:0)
尝试将此添加到接收表单帖子的脚本中:
print "POST: " . print_r($_POST, true) . "\n"
. "GET: " . print_r($_GET, true) . "\n";
如果“评论”出现在“GET”下,那么你还没有设置表格的方法=帖子
答案 5 :(得分:0)
首先将它定义为$comment=$_POST['comments'];
,然后你可以做你想做的事,
注意:不要像$_POST['comments'];
那样直接使用它,因为在某些情况下它会抛出一些错误/通知等。
答案 6 :(得分:0)
您可以尝试指定textarea的表单属性。在此,您可以设置表单的ID。额外的好处是,这允许您将textarea放在表单之外。 资料来源:http://www.w3schools.com/tags/tag_textarea.asp
答案 7 :(得分:-1)
删除部分textarea
类
<textarea name="Address" rows="3" class="input-text full-width" placeholder="Your Address" ></textarea>
到
<textarea name="Address" rows="3" class="full-width" placeholder="Your Address" ></textarea>
这取决于您的模板(已购买的模板)。
开发包括一些JavaScript以从UI上的正确对象获取价值
但对于像input-text
这样的元素,只需找到$('input[type=text]')
。