Einzelnen Beitrag anzeigen
  #11 (permalink)  
Alt 16-08-2002, 23:32
Wotan
 Master
Links : Onlinestatus : Wotan ist offline
Registriert seit: Sep 2001
Ort: Berlin
Beiträge: 5.349
Wotan ist zur Zeit noch ein unbeschriebenes Blatt
Standard

schau dir mal hier das Script an
PHP-Code:
<?php
function output_threaded ($pid$parent$level)
    {
    global 
$table;
    global 
$t_gif,$l_gif,$p_gif,$m_gif,$c_gif,$i_gif,$n_gif,$space_gif;
    static 
$letztes = array();

    
$sql_id mysql_query ("SELECT a.*, count(b.id) AS hatantwort FROM $table AS a LEFT JOIN $table AS b ON b.post_parent=a.id WHERE a.post_thread='$pid' AND a.post_parent='$parent' GROUP BY a.id ORDER BY a.post_date")or die(mysql_error());
    
$n mysql_num_rows($sql_id);
    for (
$count=0$msg mysql_fetch_assoc($sql_id); $count++)
        {
        echo 
"<tr bgcolor=\"#dfdfdf\">
        <td>"
;

/*        if (!$level)
            echo ($msg["hatantwort"] ? $m_gif : $n_gif);
        else
            {
            for ($m=0; $m<$level-1; $m++)
            echo ($letztes[$m] ? $space_gif : $i_gif);
            echo (!$letztes[$m] ? $t_gif : $l_gif);
            echo ($msg["hatantwort"] ? $m_gif : $c_gif);
            }
*/

/*
// Kurzform
        for ($m=0; $m<$level-1; $m++)
            {
            echo ($letztes[$m] ? $space_gif : $i_gif);
            }
        if ($m<$level) echo ($letztes[$m] ? $l_gif : $t_gif);
               {
               echo ($msg["hatantwort"] ? $m_gif : ($level || $count ? $c_gif : $n_gif));
               }
*/

// Langform
        
for ($m=0$m<$level-1$m++)
            {
            if (
$letztes[$m])
                {
                echo 
$space_gif;
                }
            else
                {
                echo 
$i_gif;
                }
            }

        if (
$m<$level)
            {
            if (
$letztes[$m])
                {
                echo (
$l_gif);
                }
            else
                {
                echo (
$t_gif);
                }
            }

        if (
$msg["hatantwort"])
            {
            echo 
$m_gif;
            }
        else
            {
            if (
$level || $count)
                {
                echo 
$c_gif;
                }
            else
                {
                echo 
$n_gif;
                }
            }


        echo 
"<font> <a href=\"show.php?id=".$msg[id]."\">".$msg["post_subject"]."</font></a></td>
        <td><font>"
.$msg["post_userid"]."</font></td>
        <td><font>"
.$msg["post_date"]."</font></td>
        </tr>\n"
;
        
output_threaded ($pid$msg[id], $level+1);
        }
    }
output_threaded($post_id00);
?>
Das ist die ganze Funktion für die Baumstruktur.

Wenn du es Testen willst mit dieser Datenbankstruktur.
Code:
id	thread	parent	gif
1	1	0	M
7	1	1	TM
10	1	1	TC
18	1	7	ILC <=geändert
19	1	1	LM <=geändert
26	1	19	SLC
Die Bilder sind im Anhang.
Angehängte Dateien
Dateityp: zip images.zip (5 Bytes, 25x aufgerufen)
__________________
*winks*
Gilbert
------------------------------------------------
Hilfe für eine Vielzahl von Problemen!!!
http://www.1st-rootserver.de/

Geändert von Wotan (17-08-2002 um 00:09 Uhr)
Mit Zitat antworten