查询不插入数据

时间:2015-07-28 13:38:19

标签: php mysql

尝试从表单提交数据但似乎无法正常工作。无法发现任何问题?

AppFactory.get(null, function(error) {
    console.log(error);
})

2 个答案:

答案 0 :(得分:2)

首先,请不要使用grep -B 3 -A 3 '"RW";' ./* 函数,请使用预先准备好的语句 mysql_*** http://php.net/manual/en/pdo.prepare.php 或者PDO http://php.net/manual/en/mysqli.quickstart.prepared-statements.php。准备好的语句 help 通过将用户提交的数据从查询中断开连接到数据库来保护您免受SQL注入尝试。

您可以尝试使用mysqli http://php.net/manual/en/function.mysql-real-escape-string.php来确保没有迷路mysql_real_escape_string"破坏您的查询。

'

此外,请通过致电 $proId = mysql_real_escape_string($_POST["id"]); $proCode = mysql_real_escape_string($_POST["code"]); $proDescr = mysql_real_escape_string($_POST["descr"]); $proManu = mysql_real_escape_string($_POST["manu"]); $proCPU = mysql_real_escape_string($_POST["cpu"]); $proWPU = mysql_real_escape_string($_POST["wpu"]); $proBarCode = mysql_real_escape_string($_POST["barcode"]); $proIngredients = mysql_real_escape_string($_POST["ingredients"]); $proAllergens = mysql_real_escape_string($_POST["allergenscon"]); $proMayAllergens = mysql_real_escape_string($_POST["allergensmay"]); 确认您的表单以验证数据

您还可以使用var_dump($_POST) http://php.net/manual/en/function.mysql-error.php

查看查询是否有误
mysql_error

答案 1 :(得分:1)

有关PDO的建议,准备好的陈述已经完成。

1)你有数据库和连接吗? 查看你的prototypeconnect.php并在那里找到数据库名称。检查它的名称和密码是否与你的相似。

2)您的数据库中是否有一个名为prototype.Simplex_List的表?

a)如果你有: 检查你的mysql版本是否> = 5.1.6 http://dev.mysql.com/doc/refman/5.1/en/identifiers.html

b)如果你的名字是Simplex_List

b-1)如果您的数据库名称不是prototype

替换你的

$sql = "INSERT INTO prototype.Simplex_List

$sql = "INSERT INTO Simplex_List

b-2)如果您的数据库名称为prototype

@fyrye说,您应该使用mysql_real_escape_string转义$ _POST数据。

c)如果您没有: 你应该创建它

3)检查您的表格结构

它是否包含所有theese字段id, code, descr, manu, cpu, wpu, barcode, ingredients, allergenscon, allergensmay

如果你有PRIMARY或UNIQUE键,你应该确定你没有在它们上面插入重复的数据

但无论如何要替换你的

$sql = "INSERT INTO

$sql = "INSERT IGNORE INTO

PS:如果没有您身边的任何错误消息,它无法帮助您