php-mysql;将数据写入数据库
在向数据库添加数据时遇到一些问题。我有一个文件new_entry.php,它是一个表单,它发布添加到insert_new.php的数据 每次填写并提交字段时,数据都不会进入数据库,出现错误消息“无法将数据添加到表中”。有什么想法吗 NEW_ENTRY.PHPphp-mysql;将数据写入数据库,php,mysql,forms,insert,Php,Mysql,Forms,Insert,在向数据库添加数据时遇到一些问题。我有一个文件new_entry.php,它是一个表单,它发布添加到insert_new.php的数据 每次填写并提交字段时,数据都不会进入数据库,出现错误消息“无法将数据添加到表中”。有什么想法吗 NEW_ENTRY.PHP <body> <form method="post" action="insert_new.php"><!-- form sent to insert_new.php--> Section: <
<body>
<form method="post" action="insert_new.php"><!-- form sent to insert_new.php-->
Section: <input type="text" name="section"/><br />
Food: <input type="text" name="food"/><br />
Description: <input type="text" name="description"/><br />
Price: <input type="text" name="price"/><br />
<br />
<input type="submit" value="submit"/>
</form>
</body>
插入_NEW.PHP
<?php
include 'library/connect.php';//connect to databse
$section = $_REQUEST["section"]; // get data from the HTML form on new student form
$food = $_REQUEST["food"];
$description = $_REQUEST["description"];
$price = $_REQUEST["price"];
mysql_query ("INSERT INTO food_menu (section, food, description, price) VALUES ('$section', '$food', '$description', $price)")/* insert the data to the food_menu table*/
or die ("Could not add the data to table");//error message
header('Location:index.php');//auto redirect to view page
include 'library/closedb.php';
?>
第一:不要这样做。你真的需要研究SQL注入,否则你会很抱歉的 其次,你的价格没有数字验证,假设它进入一个数字列。。。这也很糟糕。。。如果有人放了一个美元符号什么的怎么办 接下来,请发布您的表定义和连接代码,而不是连接值 如果您执行以下操作,也可以获得更多反馈:
or die (mysql_error());//error message
在接近price的MySQL查询结束时,您似乎犯了一个错误 请将以下代码替换为现有行:
mysql_query ("INSERT INTO food_menu (section, food, description, price) VALUES ('$section', '$food', '$description', '$price')")
请告诉我结果。你是说$\u请求[部分],而不是$\u发布[部分]?哪里定义了$\u请求?仅供参考,你对SQL注入非常开放。你真的应该学会在PDO中使用准备好的查询。请发布你的表结构。除了其他人所说的,change Die无法将数据添加到表中,以获取更有用的错误消息。添加mysql错误消息时,它会在“字段列表”中显示未知列“d”。请发布你的表定义,我想答案很快就会出来。这假设问题是价格列不是数字;可能是这样,但需要更多的信息来打电话。如果它是数字,而$price是数字数据,那么这是完全合法的语法。