PHP MySQL查询多行

时间:2011-02-01 01:17:14

标签: php mysql

嘿伙计们,我似乎对这段代码有些问题。我在这里尝试做的是从具有特定日期的文章数据库中提取。然后在屏幕上回显或打印出来。然后我将限制每页打印15个左右的数字,所以每天不一定有15篇文章...这就是我开始的,没有太高级,更不用说工作了。我似乎在下面收到警告,没有打印任何内容。

我是一个相当新的PHP,但我知道我想要过去,几乎......

警告:mysql_fetch_array()期望参数1为资源,布尔值为

如果有人能给我一些很棒的指示。谢谢你!

    <?php

            define('INCLUDE_CHECK',true);

            require 'includes/connect.php'; 
            require 'includes/functions.php';


            $query = mysql_query("select * from post where date = curdate()");

            while($row = mysql_fetch_array($query))
            {
                echo"<div id='itemContainer'>
                        <div id='viewCounterContainer'><div id='views'></div>'".$row['postViews']."'</div>
                        <div id='commentCounterContainer'><div id='comment'></div>'".$row['postComCount']."'</div>  
                        <div id='clockContainer'><div id='clock'></div>'".$row['postTime']."'</div>
                            <div id='itemPostLarge'>            
                                <div id='imageContainerLarge'>
                                    <tag>'".$row['postMainTag']."'</tag>
                                </div>

                                <div id='textContainerLarge'>
<h2>'".$row['postTitle']."'</h2>
<br>'".$row['postShortCont']."'</div>
                    </div>
                    </div>";
            }
        ?>

3 个答案:

答案 0 :(得分:1)

警告说提供的参数不是资源。 作为一个成功的select语句总是返回一个ressource(如果结果为空),你的查询中必须有一个错误(如果发生错误,mysql_query返回一个布尔 false )。
这是mysql_error()会告诉你什么样的错误。

答案 1 :(得分:0)

尝试“IN”

$query = mysql_query("select * from post where id IN ('4','6','8') AND date = curdate()");

答案 2 :(得分:0)

您的代码的问题是查询未完成。这意味着您的查询中存在错误。在php中查找mysql查询中的错误的简单方法是使用mysqli_error($ connection);了解更多信息见php mannual http://in2.php.net/mysqli_error

我认为问题在于$query你没有用引号转义curdate()。试试这个:

$query = mysql_query("select * from post where date = 'curdate()'");
mysqli_error($connection));

(我知道这个问题已经过时而且已经过时了但是我正在回答那些将来会通过搜索看到的人)