Discuz!论坛 SET extcredits2=extcredits2- WHERE uid='1' 值没有对应传递过去报错:
Discuz! Database Error(1064) 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 'WHERE uid='1'' at line 1UPDATE common_member_count SET extcredits2=extcredits2- WHERE uid='1'
PHP Debug
| No. | File | Line | Code | | 1 | do.php | 31 | require_once(%s) | | 2 | source/module/do/do_index.php | 115 | discuz_database::query(%s) | | 3 | source/class/discuz/discuz_database.php | 136 | db_driver_mysql->query(%s, false, false) | | 4 | source/class/db/db_driver_mysql.php | 153 | db_driver_mysql->halt(%s, %d, %s) | | 5 | source/class/db/db_driver_mysql.php | 224 | break() |
banv.caogen8.co 已经将此出错信息详细记录, 由此给您带来的访问不便我们深感歉意. Need Help?
数据更新后,自动清空了extcredits2字段。反复对照检查,没发现哪里错。将extcredits2='extcredits2-$danjia'中的变量$danjia换为数字,则正常。此处需要用变量,
这段代码写法错误,应该是:
按照你这个错误提示,就是$danjia的值没有获取到,所以这个地方出错了!
从你的代码里面可以看到你的单价调用的时候tid写的是$_G[tid],这个$_G[tid]是只在帖子内容页才会生效的,其他页面就是无效的,所以可能是您的值没有对应传递过去的原因。
单引号里不识别$变量啊,
你可以换成双引号试试,具体再想想吧
不过要记住单引号不识别变量,双引号可以识别。还有用{}大括号框住变量试试
|