我有一个包含三个字段的表单,其中两个是输入类型=“文本”,一个是文本区域。我无法将文本区域的数据存储在数据库中。帮助
<table>
<form name="email" method="post">
<tr>
<td width="90">
Email Id : <input name="Receiver1" type="text" size="70"/><br>
Subject :<input name="Sub" type="text" size="70" /><br>
<textarea cols="80" rows="30" >
</textarea>
Content:<input type="submit" name="Send" value="Send" />
</form>
<?php
require('connection.php');
if(isset($_POST['Send']))
{
$Reciever = $_POST['Receiver1'];
$Subject = $_POST['Sub'];
$text = mysql_real_escape_string($_POST['textarea']);
mysql_query("INSERT INTO EmailData VALUES ('$Reciever','$Subject', '$text')");
}
答案 0 :(得分:1)
您必须为textarea
name
属性提供一个成功的表单控件。
不允许表行元素周围的表单。有些浏览器会将表格移到表格之外,并将表格控件留在后面。 使用validator 。
答案 1 :(得分:1)
您需要命名textarea:
<textarea cols="80" rows="30" name="textarea">
</textarea>
答案 2 :(得分:1)
命名你的textarea:)
<textarea name="textarea_name" cols="80" rows="30" >
</textarea>
</form>
<?php
require('connection.php');
if(isset($_POST['Send']))
{
$Reciever = $_POST['Receiver1'];
$Subject = $_POST['Sub'];
$text = mysql_real_escape_string($_POST['textarea_name']);
mysql_query("INSERT INTO EmailData VALUES ('$Reciever','$Subject', '$text')");
}
答案 3 :(得分:0)
您必须像命名<textarea>
s:
<input>
<textarea cols="80" rows="30" name="sometext">
</textarea>
然后,您可以将其称为$_POST['sometext']
。
话虽如此,请阅读SQL injection以及如何针对它进行编程。