PHP Tutorial: Blog (Including Commenting) blank page

Post here is you are having problems with any of the tutorials.
Post Reply
mike747
Posts: 1
Joined: Sun Oct 21, 2012 3:39 pm

PHP Tutorial: Blog (Including Commenting) blank page

Post by mike747 »

I get a blank page when trying to run the blog_list.php.....I have error reporting turned on, but I get no errors.
<?php
include('core/init.inc.php');
?>


<body>
<div>
<?
         $posts = get_posts();
            $print_r($posts);
?>
</div>

</body>
</html>

<?php
  


// checks if the given post id is in the table.
function valid_pid($pid){
	$pid = (int)$pid;
	
	$total = mysql_query("SELECT COUNT(`post_id`)FROM `posts` WHERE `post_id` = {$pid}");
	$total = mysql_result($total,0);
	
	if ($total !=1){
		return false;
		}else{
		return true;	
			
			}
	}

// fetches a summary of all the blog posts.
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;
	
	}
//	fetches a single post from the table.
    function get_post($pid){
	$pid = (int)$pid;
	$sql ="SELECT
	           `post_title`AS`title`,
			   `post_body`AS`body`,
			   `post_user`AS`user`,
			   `post_date`AS`date`
			    FROM `posts`
			    WHERE `post_id`={$pid}";
			   
	$post = mysql_query($sql);
	$post = mysql_fetch_assoc($post);
	$post['comments']= get_comments($pid);
	
	return $post;
	
	
	}	
// adds a new blog entry.	
function add_post($name , $title, $body){
	
	$name = mysql_real_escape_string(htmlentities($name));{
	$title = mysql_real_escape_string(htmlentities($title));	
	$body = mysql_real_escape_string(nl2br(htmlentities($body)));
	
	mysql_query("INSERT INTO `posts`(`post_user`,`post_title`,`post_body`,`post_date`) VALUES('{$name}','{$title}','{$body}',NOW())");	
		}
	
	}	
	
	
?>
any help will be appreciated
User avatar
Temor
Posts: 1186
Joined: Thu May 05, 2011 8:04 pm

Re: PHP Tutorial: Blog (Including Commenting) blank page

Post by Temor »

on line 10, you're not actually printing it out. You need to remove the variable/dollar sign before print_r.
Post Reply