![Confused :?](./images/smilies/icon_e_confused.gif)
Here is a screenshot and I need to make separate blog for each car (Honda civic and Mitsu 3000GT).
And those are two albums,and of course users can add their car that way,but if they will have 2 cars,their blog will duplicate..
So when user or I am making a blog for HONDA for example,everything duplicates to Mitsu 3000GT.
How can I fix ?Please help me.
I think I need to make an ID for each blog_list...but I dont know how,any ideas what to do?
![Image](http://s020.radikal.ru/i713/1303/6e/5d9cf978f5e4t.jpg)
blog_list.php
[syntax=php] <?php
$posts = get_posts();
foreach ($posts as $post) {
?>
<h2><a href="blog_read.php?pid=<?php echo $post['id']; ?>"><?php echo $post['title']; ?></a></h2>
<h4>By <?php echo htmlspecialchars($post['user']); ?> on <?php echo $post['date']; ?></h4>
<h4>(<?php echo $post['total_comments']; ?> comments, last comment posted: <?php echo $post['last_comment']; ?>)</h4>
<hr />
<p><?php echo parseCodes(nl2br(htmlspecialchars($post['preview']))); ?></p>
<?php
}
?>[/syntax]
blog_post.php
[syntax=php]<?php
ob_start();
include('core/init.inc.php');
if (isset($_POST['user'], $_POST['title'], $_POST['body'])) {
add_post($_POST['user'], $_POST['title'], $_POST['body']);
header('Location: blog_list.php');
die();
}
?>
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<?php
if(isset($_POST['body'])) {
} else {
}
?>
<form action="" method="post">
<p>
<label for="user">Name</label>
<input type="text" name="user" id="user" />
</p>
<p>
<label for="title">Title</label>
<input type="text" name="title" id="title" />
</p>
<p>
<textarea name="body" rows="20" cols="60"></textarea>
</p>
<p>
<input type="submit" value="Add comment" />
</p>
</form>
</body>
</html>[/syntax]
blog_read.php
[syntax=php]<?php
ob_start();
include('core/init.inc.php');
if(isset($_GET['pid'], $_POST['user'], $_POST['body'])) {
if(add_comment($_GET['pid'], $_POST['user'], $_POST['body'])){
header("Location: blog_read.php?pid={$_GET['pid']}");
} else {
header('Location: blog_list.php');
}
}
?>
<!DOCTYPE html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<title>SITENAME</title>
</head>
<body>
<div>
<?php
if(isset($_GET['pid']) === false || valid_pid($_GET['pid']) === false) {
echo 'Invalid post ID.';
} else {
$post = get_post($_GET['pid']);
?>
<h2><?php echo $post['title']; ?></h2>
<h4>By <?php echo $post['user']; ?> on <?php echo $post['date']; ?> (<?php echo count($post['comments']); ?> comments)</h4>
<hr>
<p><?php echo parseCodes(nl2br(htmlspecialchars($post['body']))); ?></p>
<hr>
<?php
foreach($post['comments'] as $comment) {
?>
<h4>By <?php echo htmlspecialchars($comment['user']); ?> on <?php echo $comment['date']; ?></h4>
<p><?php echo parseCodes(nl2br(htmlspecialchars($comment['body']))); ?></p>
<hr>
<?php
}
if(isset($_POST['body'])) {
} else {
?>
<form action="" method="POST">
<p>
<label for="user">Name</label>
<input type="text" name="user" id="user">
</p>
<p>
<textarea name="body">text here</textarea>
</p>
<p>
<input type="submit" value="Add Comment">
</p>
</form>
<?php
}
}
?>
</div>
</body>
</html>[/syntax]
post.inc.php
[syntax=php]<?php
// controleert of opgegeven id in de tabel staat.
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 summary of all blog post
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 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(htmlspecialchars($name));
$title = mysql_real_escape_string(htmlspecialchars($title));
$body = mysql_real_escape_string(nl2br(htmlspecialchars($body)));
mysql_query("INSERT INTO `posts` (`post_user`, `post_title`, `post_body`, `post_date`) VALUES ('{$name}', '{$title}', '{$body}', NOW())");
}
?>[/syntax]