SimplePortal

Customization => Custom Coding => Topic started by: Perrin on December 31, 2008, 06:45:54 AM

Title: All on one - Threadoverview
Post by: Perrin on December 31, 2008, 06:45:54 AM
Hi dear community,

since a view days I use the SimplePortal-mod in a private german community. I changed from Woltlab Burning Board to SMF. Now I'm trying to migrate all the former features, I addet to the old board, into the new one.

One of this features was the "all on one"-sight... a central box on the old portal... looking like this:
(http://www.d78.de/images/1230723522allonone.jpg)

It's a Overview to several Boards... a searching and an offer-side.
The verry pure code looks as following:
Code: [Select]
<?php

function thread_list($board_id,$max)
    {
    $thread_query "SELECT * 
FROM `bb1_threads` WHERE boardid = "
.$board_id."
ORDER BY `bb1_threads`.`threadid` DESC 
LIMIT 0 , 
$max";
    $ergebnis_threads mysql_query($thread_query) or die ("Liste anzeigen aus der Datenbank hat nicht funktioniert");
    $search_results = array (); //Der Ergebnisarray wird aufgespannt
    $count 0//Der Handler für das Füllen des Arrays wird auf 0 gesetzt (erstes Glied im Array)
    while ($search_result mysql_fetch_array($ergebnis_threads)) //solange ein neues Element aus der Datenbank vorhanden ist
        {
            $search_results[$count] = $search_result// Trägt den Inhalt der Ergebnis"Spalte" in den Ergebnisarray in Spalte $count
            $count++; // Erhöht anschliessend $count um 1
}
return $search_results// übergibt den Ergebnisarray
}

function 
user_thread_list($min,$max,$uuser)
    { 
    $thread_query2 "SELECT * 
FROM `bb1_threads` WHERE starterid = "
.$uuser."
ORDER BY `bb1_threads`.`threadid` DESC 
LIMIT 
$min , $max";
    $ergebnis_threads2 mysql_query($thread_query2) or die ("User-Liste hat nicht funktioniert");
    $search_results = array (); //Der Ergebnisarray wird aufgespannt
    $count 0//Der Handler für das Füllen des Arrays wird auf 0 gesetzt (erstes Glied im Array)
    while ($search_result mysql_fetch_array($ergebnis_threads2)) //solange ein neues Element aus der Datenbank vorhanden ist
        {
            $search_results[$count] = $search_result// Trägt den Inhalt der Ergebnis"Spalte" in den Ergebnisarray in Spalte $count
            $count++; // Erhöht anschliessend $count um 1
}
return $search_results// übergibt den Ergebnisarray
}

function 
list_it($threads)
{
foreach ($threads as $thread) {
$timestamp $thread['starttime'];
$kurztopic substr($thread['topic'], 022);
echo "<font size='1'>» ";
echo date('d.n.Y'$timestamp);
echo ": <b><a href='thread.php?threadid=".$thread[threadid]."'>".$kurztopic."..</a></b> ".$thread[replycount]." Antworten</font><br>";
}
}

?>



<table border="0" cellpadding="0" cellspacing="1" width="100%" id="table1">
<tr>
<td width="50%" valign="top">
<table cellpadding="4" cellspacing="0" border="0" bgcolor="#181818" width="100%">
<tr bgcolor="#3E3E3E" id="tabletitle" style="background-image: url('images/darkness/cellpic.gif')">
<td align="center">
<b>Biete...</b>
</td>
</tr>
<tr>
<td id="tablea" bgcolor="#2F2F2F">
<normalfont><b><a href='board.php?boardid=13'>Kleidung</a></b></font><br>
<?php
$threads thread_list(13,10);
list_it($threads);
?>

</td>
<tr>
</tr>
<td id="tableb" bgcolor="#282828">
<normalfont><b><a href='board.php?boardid=14'>Medien</a></b></font><br>
<?php
$threads thread_list(14,3);
list_it($threads);
?>

</td>
<tr>
</tr>
<td id="tablea" bgcolor="#2F2F2F">
<normalfont><b><a href='board.php?boardid=15'>Technik</a></b></font><br>
<?php
$threads thread_list(15,2);
list_it($threads);
?>

</td>
<tr>
</tr>
<td id="tableb" bgcolor="#282828">
<normalfont><b><a href='board.php?boardid=19'>Sonstiges</a></b></font><br>
<?php
$threads thread_list(19,2);
list_it($threads);
?>

</td>
</tr>
</table>
</td>
<td width="50%" valign="top">
<table cellpadding="4" cellspacing="0" border="0" bgcolor="#181818" width="100%">
<tr bgcolor="#3E3E3E" id="tabletitle" style="background-image: url('images/darkness/cellpic.gif')">
<td align="center">
<b>Suche...</b>
</td>
</tr>
<tr>
<td id="tablea" bgcolor="#2F2F2F">
<normalfont><b><a href='board.php?boardid=16'>Kleidung</a></b></font><br>
<?php
$threads thread_list(16,10);
list_it($threads);
?>

</td>
<tr>
</tr>
<td id="tableb" bgcolor="#282828">
<normalfont><b><a href='board.php?boardid=17'>Medien</a></b></font><br>
<?php
$threads thread_list(17,3);
list_it($threads);
?>

</td>
<tr>
</tr>
<td id="tablea" bgcolor="#2F2F2F">
<normalfont><b><a href='board.php?boardid=18'>Technik</a></b></font><br>
<?php
$threads thread_list(18,2);
list_it($threads);
?>

</td>
<tr>
</tr>
<td id="tableb" bgcolor="#282828">
<normalfont><b><a href='board.php?boardid=20'>Sonstiges</a></b></font><br>
<?php
$threads thread_list(20,2);
list_it($threads);
?>

</td>
</tr>
</table>
</td>
</tr>
</table>
<table align="center" width="100%">
</tr>
<td width="50%" id="tablea" bgcolor="#282828">
<normalfont><b>Deine Threads:</b></font><br>
<?php
$uuser $wbbuserdata['userid'];
$threads user_thread_list(0,5,$uuser);
list_it($threads);
?>

</td>
<td width="50%" id="tablea" bgcolor="#282828">
<normalfont><b> </b></font><br>
<?php
$uuser $wbbuserdata['userid'];
$threads user_thread_list(5,5,$uuser);
list_it($threads);
?>

</td>
</tr>
</table>
... its still based on wbblite, but the tables exist also on my smf-db

Now my Question:
I tried to add this into a new PHP-Block, but everytime it responses me an error:
Code: [Select]
Fatal error: Cannot redeclare thread_list() (previously declared in /[.myserverpath..]/Sources/Subs-SPortal1-1.php(567) : eval()'d code:3) in /[.myserverpath..]/Sources/SPortal1-1.php(1947) : eval()'d code on line 18
Can anyone explain, why this happens... furthermore, how can i add this block?

Would be verry grateful...
Title: Re: All on one - Threadoverview
Post by: [SiNaN] on February 03, 2009, 07:46:04 AM
You can't use those codes directly as they are for other software as you say.

Have you tired Recent Posts/Topics blocks? They have a similar function.
SimplePortal 2.3.8 © 2008-2024, SimplePortal