-1

我正在一个网站上尝试学习编码,并正在制作一个简单的搜索网站。

当用户搜索“Restaurant”或“Restaurants”(或其他一些词,但我只是使用这些作为示例)时,可以帮助优化搜索的词列表,例如“American Food”或“Chinese Food”出现。但是有很多精炼词可供选择,所以我将它们全部存储在数据库中,并使用 Javascript 显示更多(当您第一次访问时,页面上限制为 10 个精炼词,但当您单击查看更多其余的出现。)无论如何,我想我会做一个 mysql 选择来显示第 1-10 行,然后另一个 mysql 选择第 11 行到 div 中所有行的末尾,直到用户点击查看更多. 但我不断收到此错误

警告:mysql_fetch_array() 期望参数 1 是资源,布尔值在第 17 行的 /Users/searchswitch.php 中给出

警告:mysql_close(): 4 不是第 22 行 /Users/searchswitch.php 中的有效 MySQL-Link 资源

这是什么原因造成的?另外,我知道(即使是一个新程序员)我的代码不是很干净,我该如何清理它)

这是代码:我省略了其他开关盒以使其更易于阅读,但如果您需要更多信息,我很乐意提供帮助!感谢大家的帮助!

switch ($q) {
            case "Restaurants" || "Restaurant":
                echo "<hr /><span><strong>Refine Search</strong><br/><br/>";
                $result = mysql_query("SELECT * FROM subcat WHERE catnumber='1' LIMIT 0,10");

                while($row = mysql_fetch_array($result))
                {
                    echo "<a href='search.php?q=". $row['subcat'] ."'/>" . $row['subcat'] ."</a>";
                    echo "<br />";
                }
                mysql_close($link);

                echo "<a href='#' id='example-show' class='showLink' onclick='showHide(\"example\");return false;'><br/>See more</a></span><div id='example' style='display:none;'>";
                $result = mysql_query("SELECT * FROM subcat WHERE catnumber='1' LIMIT 11,100");

                while($row = mysql_fetch_array($result))
                {
                    echo "<a href='search.php?q=". $row['subcat'] ."'/>" . $row['subcat'] ."</a>";
                    echo "<br />";
                }
                mysql_close($link);

                echo"<br/><a href='#' id='example-hide' class='hideLink' onclick='showHide(\"example\");return false;'>Hide</a></div>";

            break;

哦还要指出第 17 行是 *while($row = mysql_fetch_array($result))* 而第 22 行是 *mysql_close($link);*

4

1 回答 1

1

使用它,您的查询将正常工作

switch ($q) {
        case "Restaurants" || "Restaurant":
            echo "<hr /><span><strong>Refine Search</strong><br/><br/>";
            $result = mysql_query("SELECT * FROM subcat WHERE catnumber='1' LIMIT 0,10");

            while($row = mysql_fetch_array($result))
            {
                echo "<a href='search.php?q=". $row['subcat'] ."'/>" . $row['subcat'] ."</a>";
                echo "<br />";
            }


            echo "<a href='#' id='example-show' class='showLink' onclick='showHide(\"example\");return false;'><br/>See more</a></span><div id='example' style='display:none;'>";
            $result = mysql_query("SELECT * FROM subcat WHERE catnumber='1' LIMIT 11,100");

            while($row = mysql_fetch_array($result))
            {
                echo "<a href='search.php?q=". $row['subcat'] ."'/>" . $row['subcat'] ."</a>";
                echo "<br />";
            }


            echo"<br/><a href='#' id='example-hide' class='hideLink' onclick='showHide(\"example\");return false;'>Hide</a></div>";

        break;
于 2012-07-23T04:01:16.630 回答