php - PHP 中的 MySQL 查询不会打印结果

标签 php html mysql

这是我用于查询的 php 脚本:

    $query="SELECT f.EVENT, 
    f.LOCATION, 
    f.DOE, 
    f.CATEGORY, 
    f.LOGLOC, 
    f.LOGDOE, 
    f.LOGCAT, 
    ((( f.NUMOFTIMESLOC * ( Log(f.LOGLOC) ) ) + 
                                             ( f.NUMOFTIMESDOE * ( Log(f.LOGDOE) ) ) + ( 
                                           f.NUMOFTIMESCAT * (Log(f.LOGCAT))))) AS FINALRANK 
                                FROM   (SELECT E.EVENT, 
                                               ED.LOCATION, 
                                               ED.DOE, 
                                               ED.CATEGORY, 
                                               ( ( ED.NUMOFDATASET / ED.NUMOFTIMESLOC ) * 100 ) AS LOGLOC, 
                                               ( ( ED.NUMOFDATASET / ED.NUMOFTIMESDOE ) * 100 ) AS LOGDOE, 
                                               ( ( ED.NUMOFDATASET / ED.NUMOFTIMESCAT ) * 100 ) AS LOGCAT, 
                                               ED.NUMOFTIMESLOC, 
                                               ED.NUMOFTIMESDOE, 
                                               ED.NUMOFTIMESCAT 
                                        FROM   EVENT E, 
                                               EVENTDETAIL ED 

                                        WHERE  E.EVENTID = ED.EVENTID 
                                               AND ED.LOCATION = 'Liverpool' 
                                               AND ED.CATEGORY = 'Concerts') f ORDER BY FINALRANK";
                                $result=mysql_query($query);
                                $num=mysql_numrows($result);
                                mysql_close();
                                $i=0;
                                if(!$num){
                                    echo ("No Results");
                                }
                                else{
                                    while ($i < $num) {
                                        $eventid=mysql_result($result,$i,"eventid");
                                        echo $eventid;
                                        echo"<br>";
                                        $i++;
                                    }
                                }

当此查询在命令 Controller 中运行时,它工作正常并为查询打印 2 个结果,但当与 PHP 一起使用时,它只返回“无结果”。请帮忙!

最佳答案

  • 您的问题是您在输出结果之前通过 mysql_close(); 关闭了连接

删除 mysql_close(); 的那一行,并将其放在最后的结果中。

  • 还要确保将此 mysql_numrows 更改为 mysql_num_rows

关于php - PHP 中的 MySQL 查询不会打印结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15745395/

相关文章:

php - 命令 (GetRealPath) 不适用于驱动程序 (Gd)

html - 在父级中包含子级 div,而不设置子级的高度

javascript - 从 <ul> onclick 中删除 <li> 元素而不刷新页面

mysql - Visual Studio 2010 中的 Entity Framework 5 和 MySql - 模型第一期

php - 通过php5将json导入mysql5

php - 你好,我正在查询数据库

php - Yii 功能测试不适用于 phpunit

html - 使用视频标签播放 m3u8 视频

php - 无法使用 $_GET 请求从多个选择中获取值

python - 存储过程获取最后插入的行python mysql连接器