0

事情是这样的,如果我只做第一个选择,它就完美了,但是当我做 UNION 时,它会回显警告:mysqli_fetch_assoc() 期望参数 1 是 mysqli_result,布尔值在 C:\bla, bla, bla 中给出。

我搜索了类似的问题和/或问题,但没有一个发现似乎让我知道如何解决这个问题。

<?php
$moncols='col1,col2,col3,col4';
$main = "SELECT $moncols FROM table1 WHERE col4 = 'yes'
         UNION
         SELECT $moncols FROM table2 WHERE col4 = 'yes'
         UNION
         SELECT $moncols FROM table3 WHERE col4 = 'yes'
         UNION
         SELECT $moncols FROM table4 WHERE col4 = 'yes'
         UNION
         SELECT $moncols FROM table5 WHERE col4 = 'yes'";
$resoult = $mon -> query($main);
while ($row = mysqli_fetch_assoc($resoult)){
$myStuff=$row['col4'];
$otherStuff=$row['col3'];
echo $myStuff. ' - ' .$otherStuff. '<br>';
}
?>

比:)

4

1 回答 1

1

您的查询可能有错误。也许您的一张表缺少其中一列。无论如何,$resoult都不是有效的 mysqli 结果。尝试添加一些错误检查以查找问题:

$resoult = $mon->query($main);
if (! resoult) {
    echo "MySQL error: " . $mon->error);
}
于 2012-08-05T18:39:56.787 回答