gpt4 book ai didi

php - mysql错误:error in sql syntax

转载 作者:行者123 更新时间:2023-11-29 22:50:20 25 4
gpt4 key购买 nike

我想在来自维基百科页面的数据库中插入一些文本行(段落)。但是当我尝试将数据插入数据库时​​,mysql显示此错误:“您的 SQL 语法有错误;请检查与您的 MySQL 服务器版本相对应的手册,以获取使用近大写的正确语法。”谁能帮我解决这个问题..这是我到目前为止所做的...

 <?php
$loc=$_POST["new"];
$url1 ="https://en.wikipedia.org/w/api.php?format=json&action=query&prop=extracts&exintro=&explaintext=&titles=".$loc;
$opf = file_get_contents($url1);
$data = json_decode($opf, true);
$titles = array();
foreach ($data['query']['pages'] as $page) {
$des = $page['extract'];

}
$con = mysql_connect("localhost","root","");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("location", $con);
$url = "http://upload.wikimedia.org/wikipedia";
echo $sql="INSERT INTO `search`(`id`, `name`, `text`) VALUES ('$loc', '$des');";
mysql_query($sql) or die(mysql_error());
echo "1 record added";
mysql_close($con);
?>

最佳答案

理想情况下,您应该在将数据输入数据库之前对其进行转义。您遇到的问题是撇号在 '$loc' 上结束 SQL 查询,因此查询实际上为:

... VALUES ('Giant's Capital',

语法高亮应该指出为什么这是一个问题:)

在输入之前使用类似:mysql_real_escape_string() 转义您的$_POST 数据。

$loc = mysql_real_escape_string($_POST['new']);

关于php - mysql错误:error in sql syntax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28931056/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com