Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.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/5/bash/18.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 从MySQL数据库中选择单个字段以比较变量_Php_Mysql - Fatal编程技术网

Php 从MySQL数据库中选择单个字段以比较变量

Php 从MySQL数据库中选择单个字段以比较变量,php,mysql,Php,Mysql,我需要从数据库中的“groups”表中获取“groupLeader”字段,并将其存储在变量中,然后与当前登录的用户名进行比较,但我得到错误: 警告:mysql_numrows()希望参数1是第31行的/home/content/00/7923300/html/uber/tasks.php中给出的资源和对象 我目前拥有的代码如下: $sq = "SELECT * FROM groups WHERE groupID='".$groupID."'"; $result=$db->query($sq

我需要从数据库中的“groups”表中获取“groupLeader”字段,并将其存储在变量中,然后与当前登录的用户名进行比较,但我得到错误:

警告:mysql_numrows()希望参数1是第31行的/home/content/00/7923300/html/uber/tasks.php中给出的资源和对象

我目前拥有的代码如下:

$sq = "SELECT * FROM groups WHERE groupID='".$groupID."'";
$result=$db->query($sq);
$num=mysql_numrows($result);
$i=0;
while ($i < $num) {
    $gLeader=  mysql_result($result, $i, 'groupLeader');
    $i++;
}
if($_COOKIE['$username'] == $gLeader) {
    echo "User is leader.";
}

您可能需要使用PHP的mysql_查询或框架行号方法

 $result = mysql_query($sq);
或许

 $db->number_of_rows($sq);

这里的问题是,由于未知原因,查询没有正确执行。这就是为什么它将False返回到
$result
,这实际上不是一个资源

使用:


大部分代码都是多余的,毫无意义。如果只需要一行中的一个字段,则不要执行
选择*
,也不要使用循环

$sql = "SELECT groupLeader FROM ..."
$result = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($result) > 0) {
   $row = mysql_fetch_assoc($reuslt);
   if ($row['groupLeader'] == $_COOKIE['username']) {
       ...
   }
}
但是,请注意,mysql_*()函数复合体在PHP中已被正式弃用,不应再使用。考虑切换到MySqLi,通常是兼容的,或者更好的是,使用PDO代替。

“MySqLyNoMulthSe())期望参数1是“资源”,指示$结果没有填充结果集,这意味着查询没有按您预期的那样工作。尝试打印查询并直接运行它。另外,您应该转到mysqli方法。
$sq = "SELECT * FROM groups WHERE groupID='".$groupID."'";
$result = mysqli_query($connection, $sq);
$result = mysql_query($sq);
$sql = "SELECT groupLeader FROM ..."
$result = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows($result) > 0) {
   $row = mysql_fetch_assoc($reuslt);
   if ($row['groupLeader'] == $_COOKIE['username']) {
       ...
   }
}