Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/252.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP查询赢得';无法从HTML href链接工作_Php_Html_Sql - Fatal编程技术网

PHP查询赢得';无法从HTML href链接工作

PHP查询赢得';无法从HTML href链接工作,php,html,sql,Php,Html,Sql,我正在创建一个网页,允许我按县搜索位置。我正在尝试在我的基本主页上创建一个href链接,它将调用一个Php函数,然后显示来自我的Sql数据库的结果。 不知道为什么,但当我点击href链接时,主页变成空白,没有返回值。已经过代码和数据库的测试,已经向一些朋友展示过,但无法找出问题所在。感谢您的帮助 这是我的index.php主主页代码(href大约向下一半) 定位侦察 按县搜索 这是我的getAntrim.php函数,它应该对sql数据库进行排序,然后返回指定的值 <?php

我正在创建一个网页,允许我按县搜索位置。我正在尝试在我的基本主页上创建一个href链接,它将调用一个Php函数,然后显示来自我的Sql数据库的结果。 不知道为什么,但当我点击href链接时,主页变成空白,没有返回值。已经过代码和数据库的测试,已经向一些朋友展示过,但无法找出问题所在。感谢您的帮助

这是我的index.php主主页代码(href大约向下一半)


定位侦察
按县搜索


这是我的getAntrim.php函数,它应该对sql数据库进行排序,然后返回指定的值

<?php

    include ("includes/db.php");

    if (isset ($_GET['getAntrim'])) {

        $get_loc_co = "select * from locations where county='Antrim'";
        $run_loc_co = mysqli_query($db, $get_loc_co); //Gets data from db and presents on main  page

        $count = mysqli_num_rows($run_loc_co);

        if ($count==0) {

            echo "<h2>No locations found in this category.";

        }//if

        while ($row_loc_co=mysqli_fetch_array($run_loc_co)) {

                //variable to store values
                $loc_id = $row_locations['loc_id'];
                $loc_name = $row_locations['loc_name'];
                $town = $row_locations['town'];
                $county = $row_locations['county'];
                $productions = $row_locations['productions'];
                $disabled = $row_locations['dis_access'];
                $parking = $row_locations['parking'];
                $visitor = $row_locations['vis_facs'];
                $transport = $row_locations['public_trans'];
                $cost = $row_locations['cost'];
                $accom = $row_locations['accom'];
                $latitude = $row_locations['latitude'];
                $longitude = $row_locations['longitude'];
                $description = $row_locations['loc_desc'];
                $keyword = $row_locations['loc_keyword'];
                $loc_image = $row_locations['loc_img'];


                echo "
                <div id= 'single_location'>
                <h3>$loc_name</h3>
                <img src = 'Admin_area/location_images/$loc_image' width='180' height = '180'/><br>
                <p><b>Productions: $productions </b></p>
                <p><b>Description: $description </b></p>

                </div>
                ";

        }//while
    }//if


?>

您正在检查一个查询参数,但没有传入:

<a href="getAntrim.php">Antrim</a><br></br>

    if (isset ($_GET['getAntrim'])) {
                      ^^^^^^^^^

使这项工作正常。

您的代码不起作用,错误可能在某个地方的错误日志中找到(取决于web服务器)。您在此处覆盖
$run\u loc\u co
变量
while($row\u loc\u co=mysqli\u fetch\u数组($run\u loc\u co)){
将其更改为
while($row\u locations=mysqli\u fetch\u数组($run\u loc co)){
谢谢cmorrissey。我尝试过这一点和下面的其他建议,现在出现了其他错误消息。我在下面的新答案中粘贴了屏幕截图。谢谢你回复我。我尝试过了,现在收到了一些错误消息。如果你能够查看,我已经粘贴了屏幕截图。你的查询失败,你没有错误处理,并且使用了布尔值False,查询调用返回的结果就好像它是一个结果集一样,导致了进一步的错误。好的,我不确定你的意思,但会再看一看。再次感谢。
null give
:你没有正确连接到数据库,或者
$DB
不是你的数据库连接句柄。这意味着你的查询()失败,并返回失败语句。由于这不是结果,num_rows也会失败。基本上:您编写代码时好像什么都不会出错,这正是错误的态度。在处理外部资源(尤其是数据库)时,永远不要假设成功。即使您编写的SQL语法是100%完全有效的,也有几乎无限的其他失败方式(例如,坏外键、数据库崩溃、网络死机等等)。始终假设失败,检查失败,并将成功视为惊喜。
<a href="getAntrim.php">Antrim</a><br></br>

    if (isset ($_GET['getAntrim'])) {
                      ^^^^^^^^^
<a href="getAntrim.php?getAntrim">Antrim</a><br></br>
                      ^^^^^^^^^^