首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解决调用mysql_query()时出现的“意外T_ENCAPSED_AND_WHITESPACE”问题

问解决调用mysql_query()时出现的“意外T_ENCAPSED_AND_WHITESPACE”问题
EN

Stack Overflow用户
提问于 2011-06-08 13:39:04
回答 3查看 241关注 0票数 0

我编写了这个简单的注销脚本:

代码语言:javascript
复制
<?php
session_start();
$db_connect = mysql_connect('localhost', 'root', '*****');
    if(!$db_connect)
        {
         die('Не може да се осъществи връзка с базата данни' . mysql_error());
        }
mysql_select_db("chat", $db_connect);
mysql_query("DELETE FROM activeusers WHERE au_id = '$_SESSION['UserId']'");
mysql_close($db_connect);
session_unset();
session_destroy();
?>

但是当我把session_unset()和session_destroy()放在最后时,我的编辑器在mysql_query中显示了一个错误,我还没有试过,但是我想可能是这样写的,我清空了$_SESSION数组(),因此$_SESSION['UserId']在query.Am之前就被销毁了,我应该怎么做呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-08 13:52:53

按如下方式设置mysql_query-command的格式:

代码语言:javascript
复制
mysql_query("DELETE FROM activeusers WHERE au_id = '".$_SESSION['UserId']."'");

这确保了它被正确地嵌入到命令的SQL部分。

票数 1
EN

Stack Overflow用户

发布于 2011-06-08 13:53:20

将您的查询更改为:

代码语言:javascript
复制
mysql_query("DELETE FROM activeusers WHERE au_id = '".$_SESSION['UserId']."'");
票数 1
EN

Stack Overflow用户

发布于 2011-06-08 23:04:28

如果要在字符串中内联变量,则应执行以下操作之一:

代码语言:javascript
复制
// Enclose the variable in curly braces:
mysql_query("DELETE FROM activeusers WHERE au_id = '{$_SESSION['UserId']}'");

// Remove quotes from the element name:
mysql_query("DELETE FROM activeusers WHERE au_id = '$_SESSION[UserId]'");

有关如何解释字符串中的变量的更多信息,请参见http://php.net/language.types.string#language.types.string.parsing。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6274628

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档