![]() |
Display Last X Posts on front page
Hey all,
This MUST have been done, I see it was requested something like a million times by various people, and it's probably the single most common hack ever done, heh. But surprisingly, I could not for the life of me find a mod that did what I wanted. What I wanted is very simple. Display the last 10 postings on my front page. Not by thread. Not the last 10 posts of the last 10 threads, but the LAST 10 POSTS, even when they happen to be in the same thread. I achieved this by modifying a mod that already existed (I actually installed it thinking it did what I wanted, but in fact it only displayed the last 10 posts that were in different threads). It's not my intent to take full credit for this mod, the groundwork was already laid by someone else (I'd provide a link to the original, but I can't seem to find it now, grrr, perhaps somebody knows it and can provide the link). So, here is my version. It provides the time, thread name, and poster name, with links to the post and to the user profile. You can see an example of it working on my front page (www.rjcyberware.com). The only thing I don't like is that it uses server time in the display. I'd like to change that to the user local time, but I'll have to look over the php time commands to see if it's possible to do. Here is the code Code:
<?php <?php include ("/YOURPATH/DisplayPosts.php"); ?> If anyone has any suggestions for improvements, feel free. Ron [EDIT v1.1: Changed code to make the database prefix a modifiable field which gets propigated into the database queries] [EDIT v1.2: Changed code such that the modifiable fields "$titlecolor" and "$linkcolor" actually do something useful, and added in "$backgroundcolor" to change the table entry backgrounds. Broke up the output line to make it a little easier to read] |
Im sure you could save all that mysql code with vbulletin's built in functions.
|
Did you mean connecting to the database and retrieving all the various things out of the database? Yeah, probably very true. On the other hand, it's easier for me to write it from scratch than to try to look up all the various functions inside the vb package. It's not very much code, after all :)
Ron |
will this show posts of "secret board" ?
|
I get this error message any idea what I could have done wrong ?
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/b4ne/www/apb/board/DisplayPosts.php on line 24 Latest Forum Activity Total Posts: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/b4ne/www/apb/board/DisplayPosts.php on li |
Interesting, but like Guy G said, I'd prefer using vb built-in functions. :)
|
Quote:
|
i got same error
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in (my url) on line 24 Latest Forum Activity Total Posts: |
i got this erroe msg
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in (my url) on line 24 Latest Forum Activity Total Posts: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in (my url) on line 37 |
in line 34, replace vb_post with post if you don't use table prefix.
also in line $post_sql = mysql_query("SELECT postid,threadid,username,userid,dateline FROM vb_post WHERE visible=1 ORDER BY postid DESC $limited"); and $thread_sql = mysql_query("SELECT title FROM vb_thread WHERE threadid=$tid"); |
I saw this hack-mod once.
Is for a non-VB page, that's why it get all that data directly from DB. And that's why it wont work if you put it direct into a vb-page (in a template for example) |
Ah, sorry 'bout that. I forgot to mention about prefixes. Tnguy3n is correct, you have to substitute your own database prefix (if any). My prefix for my database tables is "vb_". If you don't use a prefix, change these lines as follows:
$result = mysql_query("SELECT postid FROM vb_post WHERE visible=1"); to $result = mysql_query("SELECT postid FROM post WHERE visible=1"); $post_sql = mysql_query("SELECT postid,threadid,username,userid,dateline FROM vb_post WHERE visible=1 ORDER BY postid DESC $limited"); to $post_sql = mysql_query("SELECT postid,threadid,username,userid,dateline FROM post WHERE visible=1 ORDER BY postid DESC $limited"); and $thread_sql = mysql_query("SELECT title FROM vb_thread WHERE threadid=$tid"); to $thread_sql = mysql_query("SELECT title FROM thread WHERE threadid=$tid"); (pretty much just what tn said). Quote:
Ron |
ok thxn its working now, how can i change bg color and stuff?
|
i have tried to use it as a postnuke block, so the block on right side displays the latest forums posts.
but it gives error. the page is working fine from direct url, but when i use it as block it doesnt work. Any suggetions |
Updated the code to make the database prefix issue more user friendly.
Selene: What error are you getting with postnuke? To answer your question about the table color, there's a few ways you can change it. To change the background color, put an entry in the tr field. For the font color, unfortunately, because we are dealing with static text, links, and (possibly) visited links, it's a bit more complex. Also, I've set it up so that you can control the fonts for each field individually, so we have three different fields to deal with (because I have < font > in three seperate places, I don't think you can set the three entries globally, as the < /font > would kill them, so you have to do them one at a time, if I'm not mistaken). So let's say you wanted black background with white text, the resulting output line would look like this: echo "<tr bgcolor='black'><td><font size='2' color='white' link='white' vlink='white'>$date2<BR></font><font size='2' color='white' link='white' vlink='white'><a href=\"$forum_url/showthread.php?p=$pid#post$pid\">$title</a></font><font size='2' color='white' link='white' vlink='white'><i><BR><a href=\"$forum_url/member.php?userid=$userid\">$poster</a></i></font></td></tr>"; Ugly, I know. But it should work :) I haven't tested it though, so I make no promises. You could shorten it a little bit by being more specific for particular lines (for instance, we know the first line (the date) is static text, so there's really no need to set the link or vlink colors there, I'm doing it just for consistency sake). Hope that helps. Ron |
Hi Ron, gr8 ! i will try that out so thats sorted! well its just when i try to make the latest forums page open as block using php in postnuke i get error:
u can check http://67.19.62.198/post/ i also opened a thread on postnuke site : http://forums.postnuke.com/index.php...topic&p=154711 Otherwise gr8 and useful hack! and good work :) |
Quote:
|
Quote:
arowana club indonesia ! |
hendri i still cant get it to work with postnuke as block. can u see the url in my previous post and check the error. wud be nice if I can get it to work in postnuke
|
I've had something like this on my site for a while: http://www.s3squad.com
Check these links out: https://vborg.vbsupport.ru/showthread.php?t=62823 https://vborg.vbsupport.ru/showthread.php?t=62624 But noine that use the built in vB functions. Would be nice. |
Jugo, thanks for the links! That Mod was my starting point that I changed to make mine. I was hoping someone would post it :) I don't know WHY I couldn't find it again. RobinHood deserves a good deal of the credit for my contribution.
It doesn't dispaly the last X posts, which is why I had to modify it. It displays the last 10 posts that are in different threads, which is not what I wanted. It's a subtle difference, but an important one for me :) Selene: I wish I could help, but I know next to nothing about postnuke. Probably your best bet is to post the code for the mod in the postnuke forum (just make sure to remove your real database name, database user, password, and path information first). They would probably have a better idea of what is going wrong than the people here. New version 1.2: Based on Selene's request, added values for the text color, links colors, and background color to the modifiables section. All you need to do is set these values, and the output should appear in the desired colors. [BTW: Can a moderator/admin move this thread into the vB3 section? I have no idea how it ended up in vB2 mods, I must have screwed up :) - Thanks] Ron |
Quote:
SELENE You have to remove the: Quote:
Quote:
|
What would I change to make it show it shows only the first post of each of the last x number of threads.
|
All times are GMT. The time now is 06:04 AM. |
Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|