Hello i got problem with something, here it is i have to load xml file which has over 2000 properties, here you can find the structure of the file
and i'm using the fallowing code
<html>
<head>
<title>Insert Record</title>
</head>
<body>
<?php
ini_set('display_errors', 1);
ini_set('log_errors', 1);
ini_set('error_log', dirname(__FILE__) . '/error_log.txt');
error_reporting(-1);
include ('config.php');
$url = "http://admin.resales-online.com/live/Resales/Export/XMLFeed.asp?U=RESALES@MOVE2S&P=KKPDRT6986NG&n=100";
try{
$xml = new SimpleXMLElement($url, null, true);
}catch(Exception $e){
echo $e->getMessage();
exit;
}
$sql = 'INSERT INTO properties (`id`,`status_date`,`status`,`listed_date`,`last_updated`,`price`,`currency`,`country`,`province`) VALUES ';
foreach($xml->property as $property){
$sql .= sprintf("\n",
mysql_real_escape_string($property->id),
mysql_real_escape_string($property->status_date),
mysql_real_escape_string($property->listed_date),
mysql_real_escape_string($property->last_updated),
mysql_real_escape_string($property->price),
mysql_real_escape_string($property->currency),
mysql_real_escape_string($property->country),
mysql_real_escape_string($property->province)
);
}
$sql = rtrim($sql, ',') . ';';
if(!mysql_query($sql)){
echo '<h1 style="color: red;">Error</h1><p>', mysql_error(), '</p>';
}
?>
</body>
</html>
and i got this error
Error
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 1
Please if anyone knows what might be the problem answer me here :)
Thank you
This is the format for an INSERT:
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
Where are your opening and closing parentheses for VALUES?
Each of the values in the query are missing single quotes, and you're missing the opening and closing parenthesis. The proper syntax for an INSERT is:
INSERT INTO `table` (`field1`, `field2`, `field3`) VALUES ('value1', 'value2', 'value3')
Yours will look more like:
INSERT INTO `table` (`field1`, `field2`, `field3`) VALUES value1, value2, value3
The easiest way to debug is to echo out your $sql
varaible so you can see what it looks like so you can quickly spot obvious errors.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.