我使用php代码将记录插入mysql数据库,但在MySQL中出现此错误:
您的SQL语法有错误;检查手册 对应于您的MySQL服务器版本,以便使用正确的语法 靠近新故事(公路布鲁斯).wma'),(''''''新故事(公路) Blues).wma'),''在第1行
我有三张桌子音乐,艺术家和专辑,我想同时插入数据。
这是php代码:
<?php
if(isset($_REQUEST['cmdSubmit']))
{
$con = mysql_connect("localhost","root") or die("");
$db=mysql_select_db("omg",$con);
//Movie Poster Upload
$s1=$poster1=$artist1=$album_name1 = '';
for($i=1;$i<=5;$i++)
{
$artist1=$_REQUEST['txtartist'.$i];
$album_name1=$_REQUEST['txtmovie'.$i];
$target_file="upload/".$_FILES['upsongs'.$i]['name'];
$source_file=$_FILES['upsongs'.$i]['tmp_name'];
if(move_uploaded_file($source_file, $target_file))
{
$poster1=$_FILES['upsongs'.$i]['name'];
}
echo $poster1;
$targets1_file="song/".$_FILES['txts'.$i]['name'];
$sources1_file=$_FILES['txts'.$i]['tmp_name'];
if(move_uploaded_file($sources1_file, $targets1_file))
{ $s1=$_FILES['txts'.$i]['name'];
}
$query .= "(''$artist1','$album_name1', '$s1'),";
$query1 .= "('$album_name1','$poster1'),";
}
$qry1="INSERT INTO music(artist_name, album_name, song_name) VALUES ('.$query.')";
$qry2="INSERT INTO album(album_name, poster)VALUES('.$query1.')";
}
if(!mysql_query($qry1,$con))
{
die("Error".mysql_error());
}
if(!mysql_query($qry2,$con))
{
die("Error".mysql_error());
}
echo("<script>javascript:alert('thank u for submitting data')</script>");
?>
答案 0 :(得分:1)
如果您在尝试执行查询之前打印出查询,这些问题中有90%会变得明显。
在这种情况下,您在混合报价类型时遇到问题。
将'
用于您的SQL字符串,并确保您使用"
作为PHP字符串。
您的查询会发现其他问题,例如过度使用括号和引号,但是,如果您只是在执行前检查查询,这一点应该很明显。