PHP 将 XML 价格插入 SQL table - SQL 语法错误
PHP inserting XML prices into SQL table - SQL syntax error
我是 Whosebug 的新手。希望我正确地进行了提问。
我试图将来自外部 XML (URL) 的数据插入 SQL table,但我得到:
Error: INSERT INTO 'table_name' ('price')VALUE ('5.95')
You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use
near ''BBB' ('price')VALUE ('5.95')' at line 1
我能够从 XML 中 ECHO 和 PRINT 值,也能够将非 xml 值插入到 table 中。我使用的代码是:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "dbname";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$xml=simplexml_load_file("external_xml_url") or die("Error: Cannot create object");
foreach ($xml->product as $row) {
$price = $row -> price;
$sql = "INSERT INTO 'table_name' ('price')"
. "VALUES ('$price')";
}
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
如果有人能在这方面帮助我,那就太好了。我感觉我很接近...
如果你的价格正确,那么你应该检查你的查询
前任。
INSERT INTO table_name (价格) VALUES ('$price')
据我所知,对于 MariaDB,您必须使用反引号 "qoute" 对象的名称。
这样试试:
$sql = "INSERT INTO `table_name` (`price`) VALUES ('$price')";
如果您不处理危险的对象名称,您可以只使用
$sql = "INSERT INTO table_name (price) VALUES ('$price')";
我是 Whosebug 的新手。希望我正确地进行了提问。
我试图将来自外部 XML (URL) 的数据插入 SQL table,但我得到:
Error: INSERT INTO 'table_name' ('price')VALUE ('5.95') You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''BBB' ('price')VALUE ('5.95')' at line 1
我能够从 XML 中 ECHO 和 PRINT 值,也能够将非 xml 值插入到 table 中。我使用的代码是:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "dbname";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$xml=simplexml_load_file("external_xml_url") or die("Error: Cannot create object");
foreach ($xml->product as $row) {
$price = $row -> price;
$sql = "INSERT INTO 'table_name' ('price')"
. "VALUES ('$price')";
}
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
?>
如果有人能在这方面帮助我,那就太好了。我感觉我很接近...
如果你的价格正确,那么你应该检查你的查询 前任。 INSERT INTO table_name (价格) VALUES ('$price')
据我所知,对于 MariaDB,您必须使用反引号 "qoute" 对象的名称。
这样试试:
$sql = "INSERT INTO `table_name` (`price`) VALUES ('$price')";
如果您不处理危险的对象名称,您可以只使用
$sql = "INSERT INTO table_name (price) VALUES ('$price')";