Okay, here ya go.
This meathod uses three file types.
newspage.php = the page to display the news on. It will have php includes to call the other scripts.
newslinks.php = this script calls the titles of the posts in a forum and makes the menu
newsc.php = pulls the title and content of the posts to make the news stories.
Each category of news will require a newslinks.php and a newsc.php that are set to the thredid of the coresponding forum.
Examples:
newspage.php
----------
<html>
<body>
<?php include('newslinks.php');?>
<br>
<hr>
<br>
<?php include('newsc.php');?>
</body></html>
-----------
newslinks.php
-----------
<?
/* declare some relevant variables */
$DBhost = "your server name or ip";
$DBuser = "the user name for the server";
$DBpass = "the pass word for the server";
$DBName = " the name of the database you're useing for vbulletin";
$DBTable = "thread";
$DBForum = "The number of the forum you want to use to post news";
/* do some story ripping... */
mysql_connect($DBhost,$DBuser,$DBpass) or die("Unable toconnect to database");
mysql_select_db("$DBName") or die("Unable to access the News");
$sqlquery = "SELECT * FROM $DBTable WHERE forumid = $DBForum ORDER by dateline DESC LIMIT 0,10";
$result = mysql_query($sqlquery);
$number = mysql_numrows($result);
$i = 0;
if ($number < 1) {
print "<CENTER><P>There Is NO News!</CENTER>";
}
else {
while ($number > $i) {
$title = mysql_result($result,$i,"title");
$theid = mysql_result($result,$i,"threadid");
$postquery = "SELECT postid FROM post where threadid = $theid order by dateline limit 0,1";
$postres = mysql_query("$postquery");
$post = mysql_result($postres,"postid");
print "<a href=#$post><b>$title</b></a><br>";
$i++;
}
}
?>
----------
newsc.php
----------
<?
/* declare some relevant variables */
$DBhost = "your server name or ip";
$DBuser = "the user name for the server";
$DBpass = "the pass word for the server";
$DBName = " the name of the database you're useing for vbulletin";
$DBTable = "thread";
$DBForum = "The number of the forum you want to use to post news";
/* do some story ripping... */
mysql_connect($DBhost,$DBuser,$DBpass) or die("Unable toconnect to database");
mysql_select_db("$DBName") or die("Unable to access the News");
$sqlquery = "SELECT * FROM $DBTable WHERE forumid = $DBForum ORDER by dateline DESC LIMIT 0,10";
$result = mysql_query($sqlquery);
$number = mysql_numrows($result);
$i = 0;
if ($number < 1) {
print "<CENTER><P>There Is NO News!</CENTER>";
}
else {
while ($number > $i) {
$title = mysql_result($result,$i,"title");
$theid = mysql_result($result,$i,"threadid");
$name = mysql_result($result,$i,"postusername");
$time = mysql_result($result,$i,"dateline");
$time2 = unixtojd($time);
$time3 = jdtogregorian($time2);
$storyquery = "SELECT pagetext FROM post where threadid = $theid order by dateline limit 0,1";
$storyres = mysql_query("$storyquery");
$story = mysql_result($storyres,"pagetext");
$postquery = "SELECT postid FROM post where threadid = $theid order by dateline limit 0,1";
$postres = mysql_query("$postquery");
$post = mysql_result($postres,"postid");
print "<center><font size=+1><a name=$post></a><b>$title</b></font></center> <br>$story <br><center><A href=forums/showthread.php?threadid=$theid>Comments</a> - posted
by: $name - posted on: $time3 </center><hr color=#ffcc00 noshade size=1>
";
$i++;
}
}
?>
-----------
Of course you will probably want to customize the html elements for cosmetic reasons.
let me know if you have trouble.
|