首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将空记录插入到MySQL DB中的PHP代码

问将空记录插入到MySQL DB中的PHP代码
EN

Stack Overflow用户
提问于 2010-12-04 16:24:21
回答 4查看 2.9K关注 0票数 3

我的代码将一个空记录插入到MySQL表"table1“中,而不是在form1.html中获取字段"Name”中插入的内容。知道为什么要插入空记录而不是用户在字段中输入的内容吗?

form1.html

代码语言:javascript
复制
<!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

代码语言:javascript
复制
> <?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); ?>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-12-04 16:36:21

代码语言:javascript
复制
 $query = "INSERT INTO table1 (Name)
 VALUES ('{$_POST[Name]}')"; $result =
 mysql_query($query) or die ("Query
 Failed: " . mysql_error());

$_POST和$_GET是大写字母。

将显示代码更改为:

代码语言:javascript
复制
 while ($row = mysql_fetch_array($result))
     {
         echo "<TR>";
         echo "<TD>", $row['Name'], "</TD>";
         echo "</TR>";
     }
票数 0
EN

Stack Overflow用户

发布于 2010-12-04 16:31:37

而不是

代码语言:javascript
复制
$query = "INSERT INTO table1 (Name) VALUES ('$_post[Name]')";

尝尝这个

代码语言:javascript
复制
$query = "INSERT INTO table1 (Name) VALUES ('" .
          mysql_real_escape_string($_post['Name'],$db) . "')";
票数 2
EN

Stack Overflow用户

发布于 2010-12-04 16:29:53

请把这个换一下

代码语言:javascript
复制
<input type="text" name="fname">


$query = "INSERT INTO table1 (Name)
 VALUES ('".mysql_real_escape_string($_POST[fname],$db)."')"; 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4354492

复制
相关文章

相似问题

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