繁体   English   中英

一页上有多个MySQL / PHP查询,不公平!

[英]Multiple MySQL/PHP Queries on one page, not playing fair!

我有以下MySQL查询:

<div class="box" id="settlement1">
        <?
            $query  = "SELECT name, pub, hospital, trade FROM settlements WHERE settlementID = 1";
            $result = mysql_query($query);

            while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
                $settlementName = $row['name'];
                $pubExists = $row['pub'];
                $hospitalExists = $row['hospital'];
                $tradeExists = $row['trade'];
            }
        ?>
        <div class="settlement-name"><? echo $settlementName; ?></div>
        <div class="settlement-contents">
            <?
                if ($hospitalExists == '1') { echo "<div class='hospital'>HOSPITAL</div>";  }
                if ($pubExists == '1') { echo "<div class='pub'>PUB</div>"; }
                if ($tradeExists == '1') { echo "<div class='trade'>TRADE</div>"; }
            ?>
        </div>
    </div>
    <div class="box" id="settlement2">
        <?
            $query  = "SELECT name, shop, hospital, trade FROM settlements WHERE settlementID = 2";
            $result = mysql_query($query);

            while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
                $settlementName = $row['name'];
                $pubExists = $row['pub'];
                $hospitalExists = $row['hospital'];
                $tradeExists = $row['trade'];
            }
        ?>
        <div class="settlement-name"><? echo $settlementName; ?></div>
        <div class="settlement-contents">
            <?
                if ($hospitalExists == '1') { echo "<div class='hospital'>HOSPITAL</div>";  }
                if ($pubExists == '1') { echo "<div class='pub'>PUB</div>"; }
                if ($tradeExists == '1') { echo "<div class='trade'>TRADE</div>"; }
            ?>
        </div>
    </div>

现在,第一个查询工作正常,但是第二个查询返回与第一个相同的结果。

查询1和查询2中的所有字段都不相同

^ _ ^ <(帮助!)

我不确定这是否是原因,但是...

第一个SQL:

$query  = "SELECT name, pub, hospital, trade FROM settlements WHERE settlementID = 1";

第二:

$query  = "SELECT name, shop, hospital, trade FROM settlements WHERE settlementID = 2";

第一个是酒吧,第二个是商店。 但在第二种情况下,您不要在PHP中使用shop值,而只能使用pub(不在此SQL字段中)。

您可能在这里有SQL错误(数据库中没有字段)或PHP错误(检查结果数组中不存在的字段)。

可能是您进一步向下使用变量$ query$ result导致输出第一个$ query的结果还是再次执行相同的查询?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM