【问题标题】:PHP SQL get SELECT COUNT(user) to variablePHP SQL 获取 SELECT COUNT(user) 到变量
【发布时间】:2013-11-25 16:42:09
【问题描述】:

我如何得到结果

SELECT COUNT(user) FROM game_paths WHERE user = '$user'

到 PHP 变量

我试过了

mysql_num_rows

但它什么也不返回。

【问题讨论】:

  • 如果您什么也得不到,您的 SQL 将不会返回任何内容。您是否在 phpMyAdmin 中尝试过它并在那里返回任何内容?
  • 示例存在于 php 文档中

标签: php mysql


【解决方案1】:

您应该使用 mysql_result 并获取结果的第一列。像这样:

$result = mysql_query("SELECT COUNT(user) FROM game_paths WHERE user='$user'");
$count = mysql_result($result, 0);

你也可以像这样给列起别名:

$result = mysql_query("SELECT COUNT(user) AS total FROM game_paths WHERE user='$user'");
$data = mysql_fetch_assoc($result);
$count = $data['total'];

如果您要同时选择多个列,这可能会更好,并且为了便于阅读。

【讨论】:

  • 太棒了!很高兴我能帮忙:)
【解决方案2】:

试试这样。您需要使用 mysql_fetch_assoc 或 mysql_fetch_array 函数

  $result = mysql_query(" SELECT COUNT(user) as total FROM game_paths WHERE user='$user' ");
  $row = mysql_fetch_assoc($result);  
  echo $row['total'];

或者

  $result = mysql_query(" SELECT COUNT(user) FROM game_paths WHERE user='$user' ");
  $row = mysql_fetch_array($result);  
  echo $row[0];

文档链接:http://us2.php.net/mysql_fetch_array http://www.w3schools.com/php/func_mysql_fetch_array.asp

注意:不推荐使用mysql_*函数尝试使用mysqli或PDO

【讨论】:

    【解决方案3】:

    您可以使用以下代码:

      $result = mysql_query(" SELECT COUNT(user) FROM game_paths WHERE user='$user' ");
      $row = mysql_fetch_array($result);  
      $count= $row[0];
    

    $result = mysql_query("SELECT * FROM game_paths WHERE user='$user'");
    $count=mysql_num_rows($result);
    

    这将返回满足条件的行数。

    【讨论】:

    【解决方案4】:

    嘿朋友试试这个代码,我想这会解决你的问题

    <?php
     $con=mysql_connect('hostname','DBusername','paassword');
      mysql_select_db('Db_name',$conn);
      $query="SELECT COUNT(user) as total FROM game_paths WHERE user='$user'"; 
       $result=mysql_query($query,$con);
       $row=mysql_fetch_array($result);
       echo $row['total'];
      ?>
    

    【讨论】:

      【解决方案5】:
      $result = mysqli_query("SELECT COUNT(user) AS user_count FROM game_paths WHERE user='$user'");
      $result_array = mysql_fetch_assoc($result);
      $user_count=$result_array['user_count'];
      

      请使用 mysqli_ 而不是 mysql_,因为它在新版本中已弃用

      【讨论】:

      • mysql_queries 不包括准备好的语句。这意味着可以将查询与数据混合在一起,这是一个安全漏洞。您应该使用 mysqli 或 PDO 准备好的语句。 MySQLi 旨在与 MySQL 4.1.3 或更高版本一起使用,并提供对 MySQL 中更高级功能的访问。它需要 PHP 5.0 才能使用。它还为您提供了更多控制权,因为您可以使用 MySQLi 更改 MySQL 设置,而无需停止和启动 MYSQL 服务器。 MYSQL 连接库是为旧版本的 MySQL 设计的。
      猜你喜欢
      • 2015-03-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-16
      • 2020-01-11
      相关资源
      最近更新 更多