Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何解决mySQL插入查询中的连字符问题_Php_Mysql_Sql Insert_Hyphen - Fatal编程技术网

Php 如何解决mySQL插入查询中的连字符问题

Php 如何解决mySQL插入查询中的连字符问题,php,mysql,sql-insert,hyphen,Php,Mysql,Sql Insert,Hyphen,我想将xml提要中的数据插入mysql数据库(参见下面的代码) load(“daisybelfeed.xml”); $mysql_hostname=“*******”; $mysql_user=“**********”; $mysql_password=“**********”; $mysql_database=“**********”; $bd=mysql\u connect($mysql\u主机名,$mysql\u用户,$mysql\u密码) 或者死(“哎呀,有些事情出了差错”); mysq

我想将xml提要中的数据插入mysql数据库(参见下面的代码)

load(“daisybelfeed.xml”);
$mysql_hostname=“*******”;
$mysql_user=“**********”;
$mysql_password=“**********”;
$mysql_database=“**********”;
$bd=mysql\u connect($mysql\u主机名,$mysql\u用户,$mysql\u密码)
或者死(“哎呀,有些事情出了差错”);
mysql\u select\u db($mysql\u database,$bd)
或者死(“哎呀,有些事情出了差错”);
$drop_tabel=“吊床贝尔维拉”;
$create_tabel=“创建表格”
(标题VARCHAR(255)、img_中文本、目的地国家/地区文本、目的地城市字符(100)、纬度浮动(10,6)不为空、经度浮动(10,6)不为空、链接文本、图像文本、最低价格小数不为空、最高价格小数不为空、星号数字(1)不为空、最大人数数字(1)不为空);”;
$drop=mysql_query($drop_tabel)或die('Error,drop query failed');
$create=mysql_query($create_tabel)或die('Error,create query failed');
$x=$xmlDoc->getElementsByTagName('item');
对于($i=0;$iitem($i)->getElementsByTagName('title'))
->项(0)->子节点->项(0)->节点值;
$image=$x->item($i)->getElementsByTagName('img_medium'))
->项(0)->子节点->项(0)->节点值;
$country=$x->item($i)->getElementsByTagName('country\u of\u destination')
->项(0)->子节点->项(0)->节点值;
$regio=$x->item($i)->getElementsByTagName('region\u of\u destination')
->项(0)->子节点->项(0)->节点值;
$city=$x->item($i)->getElementsByTagName('city\u of\u destination')
->项(0)->子节点->项(0)->节点值;
$latitude=$x->item($i)->getElementsByTagName('latitude'))
->项(0)->子节点->项(0)->节点值;
$longitude=$x->item($i)->getElementsByTagName('longitude')
->项(0)->子节点->项(0)->节点值;
$link=$x->item($i)->getElementsByTagName('link')
->项(0)->子节点->项(0)->节点值;
$vanafprijs=$x->item($i)->getElementsByTagName('minimum_price'))
->项(0)->子节点->项(0)->节点值;
$maximaalprijs=$x->item($i)->getElementsByTagName('maximum_price'))
->项(0)->子节点->项(0)->节点值;
$sterren=$x->item($i)->getElementsByTagName('stars'))
->项(0)->子节点->项(0)->节点值;
$maxpeople=$x->item($i)->getElementsByTagName('max\u nr\u people'))
->项(0)->子节点->项(0)->节点值;
$title=mysql\u real\u escape\u字符串($title);
$image=mysql\u real\u escape\u字符串($image);
$link=mysql\u real\u escape\u字符串($link);
$regio=mysql\u real\u escape\u字符串($regio);
$city=mysql\u real\u escape\u字符串($city);
如果($country=='FR'){
$insert=“插入belvilla(标题、img\u中等、目的地国家、目的地地区、目的地城市、纬度、经度、链接、图像、最低价格、最高价格、星星、最大人数)值(“$title”、“$image”、“$country”、“$regio”、“$city”$纬度、$经度、$link”、“$image”、$vanafprijs、$maximaalprijs、$sterren、$maxpeople)”;
$add_member=mysql_query($insert)或die(“错误,插入查询失败错误:(“.mysql_errno()”)”).mysql_Error());
}}
?>
除一个问题外,一切正常:我得到了一个mySQL错误代码1064,这是由一些包含连字符(如“La Roche en Ardenne”)的citynames引起的。正如您在代码中看到的,我试图使用mySQL\u real\u escape\u字符串解决这个问题,但没有成功

有人知道如何解决这个问题吗


谢谢!

我认为连字符不是问题所在

问题是中的
'$city'
$latitude
之间缺少逗号

 VALUES ('$title', '$image', '$country', '$regio', '$city' $latitude, $longitude, '$link', '$image', $vanafprijs, $maximaalprijs, $sterren, $maxpeople)

在insert命令中,“$city”和$LATIONE之间没有逗号

 VALUES ('$title', '$image', '$country', '$regio', '$city' $latitude, $longitude, '$link', '$image', $vanafprijs, $maximaalprijs, $sterren, $maxpeople)