欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

这个SQL串接,哪里错了啊

程序员文章站 2022-05-27 12:26:46
...
$nql = "INSERT INTO `dh_xxx` (`email`,`tel`,`upass`,`unick`,`sri`,`sex`,`photo`,`add`,`sgao`,`xli`,`xlit`,`ysru`,`ysrid`,`sxiao`,`xzuo`,`zwjsao`,`hyzkuang`,`addip`,`addipt`,`mck`) VALUES ('". $email ."','". $tel ."','". mysql_real_escape_string($upass) ."','". mysql_real_escape_string($unick) ."','". $sri ."','". $sex ."','". $photo ."','". $add ."',". $sgao .",". $xli .",'". $xlit ."',". yxin .",'". yxint ."','". $sxiao ."','". $xzuo ."','". mysql_real_escape_string($zwjsao) ."','". $hyzkuang ."','". getIPaddress() ."','". getIPS138(getIPaddress()) ."',". $site["examine"] .")";

求高人看看


回复讨论(解决方案)

mysql_query($nql) or die(mysql_error()); 执行一下不就知道了

...,". yxin .",'". yxint ."...

这是什么?
如果是常量,那么值是多少

mysql_query($nql) or die(mysql_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

是怎么回事啊,我PHP小白,求指点

...,". yxin .",'". yxint ."...

这是什么?
如果是常量,那么值是多少



这些是变量 而且都有值的 带单引号的是非数字型的 没有的是数字型的变量

是变量为什么没有 $ ???

是变量为什么没有 $ ???



是漏了,我现在加上去了,还是报那个错误:

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

其中 getIPaddress() getIPS138() 是函数
$site["examine"] $site 是全局定义的变量

我把这三个变量插入删掉之后就正常了,难道串接里面不能直接调用函数和全局变量么?

只要是字符类型字段,都应该在值外面加上引号。
echo $nql; 看看是什么