我的代码将一个空记录插入到MySQL表"table1“中,而不是在form1.html中获取字段"Name”中插入的内容。知道为什么要插入空记录而不是用户在字段中输入的内容吗?
form1.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"
>
<html lang="en">
<head>
<title>Insert Your Name</title>
</head>
<body>
<h3> Insert Your Name</h3>
<form action="form1.php" method="post">
<input type="text" name="Name">
<input type="Submit" value="Submit" name="Submit">
</form>
</body>
</html>form.php
> <?php
> $connection =
> mysql_connect("localhost","root","")
> or die ("Couldn't Connect To Server");
> $db = mysql_select_db("db1",
> $connection) or die ("Couldn't Select
> Database"); $query = "CREATE TABLE IF
> NOT EXISTS table1 (Name VARCHAR(20))";
> $result = mysql_query($query) or die
> ("Query Failed: " . mysql_error());
> $query = "INSERT INTO table1 (Name)
> VALUES ('$_post[Name]')"; $result =
> mysql_query($query) or die ("Query
> Failed: " . mysql_error()); $query =
> "SELECT * FROM table1"; $result =
> mysql_query($query) or die ("Query
> Failed: " . mysql_error());
> echo "<TABLE BORDER = '1'>";
> echo "<TR>";
> echo "<TH>Name</TH>";
> echo "</TR>";
>
> while ($row = mysql_fetch_array($result))
> {
> echo "<TR>";
> echo "<TD>", $row['name'], "</TD>";
> echo "</TR>";
> }
> echo "</TABLE>";
> mysql_close($connection); ?>发布于 2010-12-04 16:36:21
$query = "INSERT INTO table1 (Name)
VALUES ('{$_POST[Name]}')"; $result =
mysql_query($query) or die ("Query
Failed: " . mysql_error());$_POST和$_GET是大写字母。
将显示代码更改为:
while ($row = mysql_fetch_array($result))
{
echo "<TR>";
echo "<TD>", $row['Name'], "</TD>";
echo "</TR>";
}发布于 2010-12-04 16:31:37
而不是
$query = "INSERT INTO table1 (Name) VALUES ('$_post[Name]')";尝尝这个
$query = "INSERT INTO table1 (Name) VALUES ('" .
mysql_real_escape_string($_post['Name'],$db) . "')";发布于 2010-12-04 16:29:53
请把这个换一下
<input type="text" name="fname">
$query = "INSERT INTO table1 (Name)
VALUES ('".mysql_real_escape_string($_POST[fname],$db)."')"; https://stackoverflow.com/questions/4354492
复制相似问题