Jump to content

Read from two tables in one query? (SOLVED)


Wintergreen

Recommended Posts

Any ideas why it would print it three times?

[code]$sql = "SELECT posts.title, posts.post_body, posts.poster_name, posts.post_time, posts.postid, posts.comment_number, users.avatar FROM posts, users WHERE posts.post_type = '0' ORDER BY posts.postid DESC";
$query = mysql_query($sql);
while($row = mysql_fetch_assoc($query)){
    $value = strtotime($row['post_time']);
    echo "\n" . "\t";
    echo "<img src=" . $row['avatar'] . " height=39 width=39 align=left><h1>" . $row['title'] . "<br /><span> by " . $row['poster_name'] . " on " . date("F j @ H:i", $value);
if ($_SESSION['user_level'] == 2 && $row['poster_name'] == $_SESSION['screenname']) {
echo " - <a href=edit.php?id=" . $row['postid'] . ">Edit</a>";
}
    echo '</span></h1>';
    echo '<p>' . nl2br($row['post_body']) . '<br />';
    echo "<span><a href=comment.php?id=" . $row['postid'] . ">Post a comment</a> - " . $row['comment_number'] . " comments</span></p>";
}
?>[/code]
This is more of a hack than a proper solution, but I'm not sure of the proper way to do this.

[code]SELECT DISTINCT(posts.title), posts.post_body, posts.poster_name, posts.post_time, posts.postid, posts.comment_number, users.avatar FROM posts, users WHERE posts.post_type = '0' ORDER BY posts.postid DESC[/code]
Awesome, you got me looking in the generally correct direction, the code that was needed was :
[code]
$sql = "SELECT posts.title, posts.post_body, posts.poster_name, posts.post_time, posts.postid, posts.comment_number, users.avatar FROM posts JOIN users WHERE posts.post_type = '0' AND users.screenname = posts.poster_name ORDER BY posts.postid DESC";
[/code]

There we go, no triple posts or anything

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.