PHP没有打印任何内容


PHP is not printing anything

我有一个html文件,里面有php,假设它正在查询MYSQL数据库,以获取关于死亡人数最多的25名玩家的信息。然而,页面一直是空白的,我无法找出问题所在。数据库中确实有很多条目。托管该文件的服务器也安装了PHP。有人能告诉我问题在哪里吗?或者告诉我是什么导致了这个问题?干杯代码:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<?php
   require_once( "connect.php" );
   $select_top_25 = "
      SELECT     `stats_players`.`name`,
                 `stats_total_pvp_kills`.`times`, 
                 `stats_total_deaths`.`times` 
      FROM       `stats_players`
      INNER JOIN `stats_total_pvp_kills`
      BY         `stats_players`.`player_id` = `stats_total_pvp_kills`.`player_id`
      INNER JOIN `stats_total_deaths`
      BY         `stats_players`.`player_id` = `stats_total_deaths`.`player_id`
      ORDER BY   `stats_total_pvp_kills`.`times` ASC LIMIT 25";
   $result = mysqli_query($link, $select_top_25) or die (mysqli_error($link));
   $counter = 0;
   while($row = mysqli_fetch_row($result))
   {
       $counter = $counter + 1;
       print '#'.$counter;
       print 'Name: '.$row[0];
       print 'Kills: '.$row[1];
       print 'Deaths: '.$row[2];
   }
?>
</body>
</html>

尝试将BY替换为ON,如下所示:

SELECT     `stats_players`.`name`, 
           `stats_total_pvp_kills`.`times`, 
           `stats_total_deaths`.`times` 
FROM       `stats_players`
INNER JOIN `stats_total_pvp_kills`
ON         `stats_players`.`player_id` = `stats_total_pvp_kills`.`player_id`
INNER JOIN `stats_total_deaths`
ON         `stats_players`.`player_id` = `stats_total_deaths`.`player_id`
ORDER BY   `stats_total_pvp_kills`.`times` ASC LIMIT 25

这可能会有所帮助。

通常,对于这种情况,当您不确定实际错误是什么时,您应该一步一步地调试脚本,在那里,您需要检查的第一件事是,在执行任何mySql操作之前,回显任何简单的文本。

意味着在包含connect.php之前,你应该执行echo 'hii'; exit;并运行它。如果它显示正确,那么你可以继续检查我的sql查询和结果

这里的问题可能是

  1. 您保存的文件扩展名为html,而不是PHP
  2. 由于任何原因,mysql查询都没有结果

可能的原因:

  • 您的文件是.html而不是.php文件
  • 您没有运行apache(如果是本地
  • 您没有将它放在正确的目录中(如果它的本地和apache正在运行
  • fileinclude(connect.php)存在Soemthing错误
  • 没有数据库连接
  • 未设置变量$link
  • 您的mysql语法错误(其INNER JOIN…ON…不是BY
  • 您的mysql没有结果
  • 由于php.ini设置,没有显示任何错误