PHP Blog Tutorial [Issue]

Ask about a PHP problem here.
Post Reply
TomTheCoder
Posts: 2
Joined: Sat Dec 01, 2012 5:08 pm

PHP Blog Tutorial [Issue]

Post by TomTheCoder »

I've been following the Blog tutorial, and it gives me the following error when I attempt to use what I've coded so far(When hosting blog_list.php):

Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in /core/inc/posts.inc.php on line 42

This is my code in line 42:
while (($row = mysql_fetch_assoc($posts)) !== false)

And this is the entire function:
[syntax=php]function get_posts() {
$sql = "SELECT
'posts'.'post_id' AS 'id',
'posts'.'post_title' AS 'title',
LEFT('posts.post_body', 512) AS 'preview',
'posts'.'post_user' AS 'user',
DATE_FORMAT('posts'.'post_date', '%d/%m/%Y %H:%i:%s') AS 'date',
'comments'.'total_comments',
DATE_FORMAT('comments'.'last_comment','%d/%m/%Y %H:%i:%s') AS 'last_comment'
FROM 'posts'
LEFT JOIN (
SELECT
'post_id',
COUNT('comment_id') AS 'total_comments',
MAX('comment_date') AS 'last_comment'
FROM 'comments'
GROUP BY 'post_id'
) AS 'comments'
ON 'posts'.'post_id' = 'comments'.'post_id'
ORDER BY 'posts'.'post_date' DESC";

$posts = mysql_query($sql);

$rows = array();
while (($row = mysql_fetch_assoc($posts)) !== false) {
$rows[] = array(
'id' => $row['id'],
'title' => $row['title'],
'preview' => $row['preview'],
'user' => $row['user'],
'date' => $row['date'],
'total_comments' => ($row['total_comments'] === null) ? 0 : $row['total_comments'],
'last_comment' => ($row['last_comment'] === null) ? 'never' : $row['last_comment']
);
}

return $rows;

}[/syntax]

Thanks,
Tom.
Last edited by jacek on Thu Dec 06, 2012 12:42 am, edited 1 time in total.
Reason: code tags...
ExtremeGaming
Posts: 205
Joined: Mon Jul 09, 2012 11:13 pm

Re: PHP Blog Tutorial [Issue]

Post by ExtremeGaming »

Change all the apostrophes around your column names to backticks `
<?php while(!$succeed = try()); ?>
TomTheCoder
Posts: 2
Joined: Sat Dec 01, 2012 5:08 pm

Re: PHP Blog Tutorial [Issue]

Post by TomTheCoder »

All fixed, thanks!
Post Reply