Php 与MySQL服务器版本相对应的手册,以便使用正确的语法
我试图在数据库中插入一条记录,但它给了我一个错误 我正在使用PHP和MySQL 我需要一个成功的结果,但我得到了一个错误,下面是我的代码:Php 与MySQL服务器版本相对应的手册,以便使用正确的语法,php,mysql,Php,Mysql,我试图在数据库中插入一条记录,但它给了我一个错误 我正在使用PHP和MySQL 我需要一个成功的结果,但我得到了一个错误,下面是我的代码: $Pname = $_POST[Pname]; $P_Price = $_POST[P_Price]; $P_Desc = $_POST[P_Desc]; $P_City = $_POST[P_City]; $P_Size = $_POST[P_Size]; $P_Rooms = $_POST[P_Rooms];
$Pname = $_POST[Pname];
$P_Price = $_POST[P_Price];
$P_Desc = $_POST[P_Desc];
$P_City = $_POST[P_City];
$P_Size = $_POST[P_Size];
$P_Rooms = $_POST[P_Rooms];
$P_garage = $_POST[P_garage];
$P_Address = $_POST[P_Address];
$P_Long = $_POST[P_Long];
$P_Lat = $_POST[P_Lat];
$Provinces_idProvinces = $_POST[Provinces_idProvinces];
// array for JSON response
$response = array();
$result = mysql_query("INSERT INTO property(Pname,P_Price,P_Desc,P_City,P_Size,P_Rooms,P_garage,P_Address,P_Long,P_Lat,Provinces_idProvinces)
VALUES ('".$Pname."',".$P_Price.",'".$P_Desc."','".$P_City."','".$P_Size."','".$P_Rooms."',".$P_garage.",'".$P_Address."',".$P_Long.",".$P_Lat.",".$Provinces_idProvinces."'");
if ($result) {
// successfully inserted into database
$response["success"] = 1;
$response["message"] = $result ;
// echoing JSON response
echo json_encode($response);
} else {
// failed to insert row
$response["success"] = 0;
$response["message"] = mysql_error();
这是我的错误:
{"success":0,"message":"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''','','','',,'',,,'' at line 2"}
我检查了所有的东西,但还是有同样的错误。请帮忙,快3天了
以下是MySQL查询:
delimiter $$
CREATE TABLE `property` (
`idProperty` int(11) NOT NULL AUTO_INCREMENT,
`Pname` varchar(45) DEFAULT NULL,
`P_Price` double DEFAULT NULL,
`P_Desc` varchar(45) DEFAULT NULL,
`P_City` varchar(45) DEFAULT NULL,
`P_Size` varchar(45) DEFAULT NULL,
`P_Rooms` varchar(45) DEFAULT NULL,
`P_garage` int(11) DEFAULT NULL,
`P_Address` varchar(45) DEFAULT NULL,
`P_Long` int(11) DEFAULT NULL,
`P_Lat` int(11) DEFAULT NULL,
`P_Sold` tinyint(1) DEFAULT '0',
`Provinces_idProvinces` int(11) NOT NULL,
PRIMARY KEY (`idProperty`),
KEY `fk_Property_Provinces` (`Provinces_idProvinces`),
CONSTRAINT `fk_Property_Provinces` FOREIGN KEY (`Provinces_idProvinces`) REFERENCES `provinces` (`idProvinces`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1$$
您的查询存在许多问题:
$\u GET
或$\u POST
)-为此至少使用mysql\u real\u escape\u string
),,
。。。提交后验证表单,并检查每个属性是否以其他方式设置了值将其设置为'
(空字符串)或0
(零)或null
mysql\u*
函数,至少要使用mysqli\u*
或PDO$P_Price = $_POST[P_Price];
除非p_Price
是一个常数,否则您需要对其进行报价:
$P_Price = $_POST['P_Price'];
激活错误报告以查看您造成的所有错误,然后修复它们:
error_reporting(E_ALL);
ini_set('display_errors', true);
您的查询存在许多问题:
$\u GET
或$\u POST
)-为此至少使用mysql\u real\u escape\u string
),,
…在提交后验证表单,并检查每个属性是否以其他方式设置了值,将其设置为'
(空字符串)或0
(零)或null
mysql\u*
函数,至少要使用mysqli\u*
或PDO$P_Price = $_POST[P_Price];
除非p_Price
是一个常数,否则您需要对其进行报价:
$P_Price = $_POST['P_Price'];
激活错误报告以查看您造成的所有错误,然后修复它们:
error_reporting(E_ALL);
ini_set('display_errors', true);
“我检查了所有内容”您是否检查了查询的实际外观?SQL注入、引号和撇号的错误操作、没有检查调用后查询的外观(您是否尝试对查询进行
echo
)“我检查了所有内容”您是否检查了查询的实际外观?SQL注入、使用引号和撇号的错误操作、没有检查调用后查询的外观(您是否在查询上尝试了echo
?