数据未插入

时间:2013-01-17 16:02:01

标签: php mysql

我创建了一个简单的Web表单,您可以在其中输入数据,然后将其发布到数据库中,当提交正确提交的信息时,但是当我在表中查看数据时,数据是不可见的。

查询

CREATE TABLE `recipe` (
    `id` int(4) NOT NULL auto_increment,
    `recipename` varchar(65) NOT NULL default '',
    `ingredients` varchar(65) NOT NULL default '',
    `instructions` varchar(65) NOT NULL default '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=0 ; 

php code

<?php

$host="localhost"; // Host name
$username="my username"; // Left empty due to privacy
$password="mypassword"; // Left empty due to privacy
$db_name="mydatabase"; // Left empty due to privacy
$tbl_name="recipe"; // Table name


mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");


$recipe=$_POST['recipename'];
$ingredients=$_POST['ingredients'];
$instructions=$_POST['instructions'];


$sql="INSERT INTO $tbl_name(recipename, ingredients, instructions)VALUES('$recipe', '$ingredients', '$instructions')";
$result=mysql_query($sql);


if($result){
    echo "Successful";
    echo "<BR>";
    echo "<a href='recipe.php'>Back to main page</a>";
} else {
   echo "ERROR";
}
?>

<?php
// close connection
mysql_close();
?> 

网络表单

<table width="300" border="0" align="center" cellpadding="0" cellspacing="1">
  <tr>
    <td>
      <form name="form1" method="post" action="insert_ac.php">
        <table width="100%" border="0" cellspacing="1" cellpadding="3">
          <tr>
            <td colspan="3"><strong>Insert Data Into mySQL Database </strong></td>
          </tr>
          <tr>
            <td width="71">Recipe name</td>
            <td width="6">:</td>
            <td width="301"><input name="name" type="text" id="recipe"></td>
          </tr>
          <tr>
            <td>Ingredients</td>
            <td>:</td>
            <td><input name="lastname" type="text" id="ingredients"></td>
          </tr>
          <tr>
            <td>Instructions</td>
            <td>:</td>
            <td><input name="email" type="text" id="instructions"></td>
          </tr>
          <tr>
            <td colspan="3" align="center"><input type="submit" name="Submit" value="Submit"></td>
          </tr>
        </table>
      </form>
    </td>
  </tr>
</table>

我很想知道是否有人知道数据不可见的原因。enter image description here

没有数据的表格图像

1 个答案:

答案 0 :(得分:4)

$recipe=$_POST['recipename'];
$ingredients=$_POST['ingredients'];
$instructions=$_POST['instructions'];

需要:

$recipe=$_POST['name'];
$ingredients=$_POST['lastname'];
$instructions=$_POST['email'];

您的表单字段名称错误,因此它没有获取值,因此插入空数据。如果您将error_reporting设置为E_ALL,则会出现错误。确保在该设置下使用它进行开发。

表单字段中的name属性也是$_POST['INDEX_NAME']的索引名称,您错误地使用了id属性。