MySQL the right syntax to use near '' at line 1 error

匿名 (未验证) 提交于 2019-12-03 00:48:01

问题:

hello i have a run a query using php it give 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

but when i echo the query and run manually using sqlyog software it runs fine. can anyone say whats the problem on here this is my generated query

INSERT INTO wp_bp_activity             (             user_id,              component,              `type`,              `action`,              content,              primary_link,              item_id,              secondary_item_id,              date_recorded,              hide_sitewide,              mptt_left,              mptt_right              )              VALUES(              1,'activity','activity_update','admin posted an update','242925_1','http://brandnewmusicreleases.com/social-network/members/admin/',' ',' ','2012-06-22 12:39:07',0,0,0              )

and here is my php code

$qr2="INSERT INTO wp_bp_activity             (             user_id,              component,              `type`,              `action`,              content,              primary_link,              item_id,              secondary_item_id,              date_recorded,              hide_sitewide,              mptt_left,              mptt_right              )              VALUES(              $cid,'activity',              'activity_update',              '$name posted an update',              '$ionlyname',              'http://brandnewmusicreleases.com/social-network/members/$name/',              ' ',              ' ',              '$time',              0,              0,              0              )";

after edited

echo $qr2="INSERT INTO wp_bp_activity (user_id,component,`type`,`action`,content,primary_link,item_id,secondary_item_id,date_recorded,hide_sitewide,mptt_left,mptt_right) VALUES($cid,'activity','activity_update','$name posted an update','$ionlyname','http://brandnewmusicreleases.com/social-network/members/$name/','','','$time',0,0,0)";  mysql_query($qr2) or die(mysql_error());

回答1:

the problem is because you have got the query over multiple lines using the " " that PHP is actually sending all the white spaces in to MySQL which is causing it to error out.

Either put it on one line or append on each line :o)

Sqlyog must be trimming white spaces on each line which explains why its working.

Example:

$qr2="INSERT INTO wp_bp_activity       (             user_id,  (this stuff)component,      (is)      `type`,     (a)        `action`,   (problem)  content,              primary_link,              item_id,....


回答2:

INSERT INTO wp_bp_activity             (             user_id,              component,              `type`,              `action`,              content,              primary_link,              item_id,              secondary_item_id,              date_recorded,              hide_sitewide,              mptt_left,              mptt_right              )              VALUES(              1,'activity','activity_update','admin posted an update','242925_1','http://brandnewmusicreleases.com/social-network/members/admin/',' ',' ','2012-06-22 12:39:07',0,0,0              )


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!