0

尝试使用此代码时出现此错误。我可以在不同的数据库上使用具有不同表名的完全相同的代码,并且工作正常。

<?php

            $getid = $_GET['id'];

            if (!$getid)
                $getid = "1";

            require('scripts/connect.php');
            $query = mysql_query("SELECT * FROM team WHERE id='$getid'");
            $numrows = mysql_num_rows($query);

            if($numrows == 1){
                $row = mysql_fetch_assoc($query);
                $id = $row['id'];
                $firstname = $row['first_name'];
                $lastname = $row['last_name'];
                $position = $row['position'];
                $bats = $row['bats'];
                $throws = $row['throws'];
                $number = $row['number'];
                $picture = $row['picture'];


                echo "<div id='team'>

我也遇到了同样的错误,这也适用于另一个数据库(同一服务器)。

<?php
        require ("scripts/connect.php");
        $query = mysql_query("SELECT * FROM team WHERE id>=1 DESC LIMIT 10");
        $numrows = mysql_num_rows($query);
            if($numrows > 0){
                Echo "
                    <div class='box'>
                        <div class='top'>Players</div>
                        <div class='bottom'>";
                while ($row = mysql_fetch_assoc($query)){
                    $id = $row['id'];
                    $firstname = $row['first_name'];
                    $number = $row['number'];

                    echo "<a href='$site/team.php?id=$id'>$first_name $number</a><br />";
                }
                echo "</div></div>";
4

3 回答 3

1

错误“期望参数 1 是资源,给定的布尔值”背后的原因是当您执行错误的查询并且它失败时,它返回 0,这是您的“给定的布尔值”的原因。

@JW 指出了一个原因,并用以下方法更正了查询:

SELECT * 
FROM   team 
WHERE  id>=1 
ORDER  BY id DESC  // change the column name with your original one.
LIMIT  10

尽管如此,如果你得到相同的结果,你在查询本身就犯了错误。可能的原因可能是:错误的 table_name、错误的 column_name 等。

于 2013-03-08T05:45:49.457 回答
0

问题出在这个查询上

SELECT * FROM team WHERE id>=1 DESC LIMIT 10
                            // ^ Error on this line

您忘记添加ORDER BY子句。

SELECT * 
FROM   team 
WHERE  id>=1 
ORDER  BY ID DESC  // change the column name with your original one.
LIMIT  10
于 2013-03-08T03:30:06.343 回答
0

只需用此查询替换查询

        $query = mysql_query("SELECT * FROM   team WHERE  id>=1 
        ORDER BY id DESC  LIMIT  10 ");
于 2013-03-08T05:14:36.873 回答