Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 未知列';c63rd321和x27;在';其中第'条;_Php_Mysql - Fatal编程技术网

Php 未知列';c63rd321和x27;在';其中第'条;

Php 未知列';c63rd321和x27;在';其中第'条;,php,mysql,Php,Mysql,您好,我从一些用户那里得到以下错误:“where子句”中的未知列“c63rd321”它适用于一个用户,但不适用于所有其他用户任何想法 $query = 'SELECT first_name,last_name,is_admin FROM '.$database.'.users WHERE users.id='.$user_id.' LIMIT 1'; 是否需要添加到用户。id=”“为什么它适用于一个用户而不适用于其他用户看起来,$user\u id是一个字符串(“c63fb321”)而不是一个

您好,我从一些用户那里得到以下错误:“where子句”中的未知列“c63rd321”它适用于一个用户,但不适用于所有其他用户任何想法

$query = 'SELECT first_name,last_name,is_admin FROM '.$database.'.users WHERE users.id='.$user_id.' LIMIT 1';

是否需要添加到用户。id=”“为什么它适用于一个用户而不适用于其他用户

看起来,
$user\u id
是一个字符串(
“c63fb321”
)而不是一个整数。使用引号(和转义!)


(假设这里的
mysql\uuu
函数,但这也适用于PDO和mysqli)

看起来
$user\u id
是一个字符串(
“c63fb321”
)而不是一个整数。使用引号(和转义!)

(假设这里的
mysql\uu
功能,但这也适用于PDO和mysqli)

请替换此:

$query = 'SELECT first_name,last_name,is_admin FROM '.$database.'.users WHERE users.id='.$user_id.' LIMIT 1';
。。。为此:

$query = 'SELECT first_name,last_name,is_admin FROM '.$database.'.users WHERE users.id=:user_id LIMIT 1';
                                                                                       ^^^^^^^^
。。。并将
user\u id
添加到准备好的语句参数中。如果你的库不支持准备好的语句,可以自由地要求进一步的细节,但是你应该考虑转入一个更好的库。

< P>请替换这个:

$query = 'SELECT first_name,last_name,is_admin FROM '.$database.'.users WHERE users.id='.$user_id.' LIMIT 1';
。。。为此:

$query = 'SELECT first_name,last_name,is_admin FROM '.$database.'.users WHERE users.id=:user_id LIMIT 1';
                                                                                       ^^^^^^^^

。。。并将
user\u id
添加到准备好的语句参数中。如果你的库不支持准备好的语句,你可以自由地要求更多的细节,但是你应该考虑转入一个更好的库。

是你的用户ID总是整数吗?如果是这样,则不需要添加引号。但从你的问题中,我可以猜到它可能是字符串。您可以使用
mysql\u real\u escape\u string()
作为快速测量()


但是,正如您从前面的答案中所知道的,如果您用mysqli或PDO重写它会更好。但是它应该很复杂,可能需要一些时间。

您的用户id总是整数吗?如果是这样,则不需要添加引号。但从你的问题中,我可以猜到它可能是字符串。您可以使用
mysql\u real\u escape\u string()
作为快速测量()


但是,正如您从前面的答案中所知道的,如果您用mysqli或PDO重写它会更好。但是它应该很复杂,可能需要一些时间。

您是否对
$database
$user\u id
进行过清理?没有通过调用$\u SESSION[''设置变量您是否对
$database
$user\u id
进行过清理?没有通过调用$\u SESSION[''设置了变量用户id来自$\u会话['User']@Dan-我无法理解您的问题。用户id来自$\u会话['User']@Dan-我无法理解您的问题。我会尝试一下。感谢用户id确实是一个字符串,有几个破折号“-”字符,我试试看。感谢用户id确实是一个字符串,并且有几个破折号“-”字符,我刚刚访问了数据库,问题是其中一个用户有id integer,所有其他用户有一个字符串有id。我刚刚访问了数据库,问题是其中一个用户有id integer,所有其他用户有一个字符串有id。