【问题标题】:Echoing MySQL query in PHP在 PHP 中回显 MySQL 查询
【发布时间】:2013-12-25 10:01:39
【问题描述】:

我过去一直在尝试在 PHP 中回显 MySQL 查询的结果。我似乎无法让它工作,所以我有点迷茫。我知道查询的工作方式与我在 PHPMYADMIN 中所做的一样,并且工作正常,但是每当我加载网页时,都没有输出任何内容。出于这个问题的目的,我已经概括了查询中的内容,因为我显然不希望任何人访问我的数据库。这是我尝试过的:

<?php
    $connect = mysql_connect('host', 'user', 'password', 'dbname');
    if (!$connect) {
        die('Could not connect: ' . mysql_error());
    }
    if (!mysql_select_db('dbname')) {
        die('Could not select database: ' . mysql_error());
    }
    $result = mysql_query('SELECT SUM(row name) FROM `table`');
    if (!$result) {
        die('Could not query:' . mysql_error());
    }
    echo mysql_result($result);

    mysql_close($connect);
?>

期待您的回复。

【问题讨论】:

  • echo "mysql_result($result)";怎么样
  • MYSQL_* 自 PHP 5.5.0 起已弃用,将来将被删除。相反,应该使用 MySQLi 或 PDO_MySQL 扩展。

标签: php mysql sql echo


【解决方案1】:

mysql_result 需要第二个参数(正在检索的结果中的行号)。

echo mysql_result($result, 0);

【讨论】:

    【解决方案2】:

    你必须改变

    回显 mysql_result($result);

    echo mysql_result($result,0);
    

    或者你可以使用

    print_r(mysql_fetch_assoc($result));
    

    【讨论】:

      【解决方案3】:

      试试这个

      echo mysql_result($result,0);
      

      更多信息请关注http://www.php.net/mysql_result

      或者您可以使用 mysql_fetch_row 代替 mysql_result。

      $row = mysql_fetch_row($result);
      echo $row[0];
      

      【讨论】:

        【解决方案4】:

        您可以使用以下格式: 像这样给出你的 Sql 命令:

         $result = mysql_query('SELECT SUM(row name) as new_column_name FROM `table`');
        

        然后使用这个循环

        while($fetched_values = mysql_fetch_array($result)){
            echo $fetched_values['new_column'];
        }
        

        【讨论】:

          【解决方案5】:

          在您的 mysql_connect 中,您提供了 4 个参数。它接受 3 个参数

          主机、用户名和密码。 dbname 在mysql_select_db 中给出

          正如您从官方文档中看到的那样。所以从 mysql_connect 函数中删除第 4 个参数。

          $link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
          

          http://php.net/function.mysql-connect

          $db_selected = mysql_select_db('foo', $link);
          

          http://www.php.net/manual/en/function.mysql-select-db.php

          但这些 mysql_* 函数将被弃用,改用 mysqli。

          【讨论】:

            【解决方案6】:

            在 mysql_result 中传递一个行号作为第二个参数

            echo mysql_result($result, 1);

            使用 print_r(mysql_fetch_array($result)); 其中 $result 是您的结果资源

            【讨论】:

              【解决方案7】:

              如果您有任何疑问,可以参考我的以下示例程序。

              <?php
              $connect = mysql_connect('localhost', 'user_name', 'password', 'db_name');
              if (!$connect) 
              {
                  die('Could not connect: ' . mysql_error());
              }
              if (!mysql_select_db('db_name')) 
              {
                  die('Could not select database: ' . mysql_error());
              }
              $row = mysql_query('SELECT (Tamil+English+Maths) as total FROM table_name');
              if (!$row) 
              {
                  die('Could not query:' . mysql_error());
              }
              while($fetched_row = mysql_fetch_array($row)){
              echo $fetched_row['total'];
              }
              
              mysql_close($connect);
              

              ?>

              这里泰米尔语、英语和数学是我表的列值

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2017-08-28
                • 2011-10-06
                • 2015-04-14
                • 2021-09-02
                相关资源
                最近更新 更多