Avatar billede sim00n Praktikant
23. september 2005 - 15:40 Der er 4 kommentarer og
1 løsning

forum script, næste forrige sidetal

Hej jeg bruger et downloadet forum script inde på Kemon.dk men når man har oprettet en forum-tråd, så ved board.php som viser listen over trådene, laver den selv ja jeg ved ikke hvor mange af de der "forrige 1 side næste" links.. tror vel den laver en mio.

I admindelen er der ingen indstillinger til det..
board.php ser sådan ud:

<?php
    $side = ".";
    require "$side/tjek.func.php";
    require "$side/includes/funcs.php";
    $query = mysql_query("SELECT * FROM forum_board WHERE id = '$_GET[board]' LIMIT 1");
    $r = mysql_fetch_array($query);
  $side_titel = "Board: $r[board]";
  $query = mysql_query("SELECT * FROM forum_emne WHERE id = '$_GET[emneId]' LIMIT 1");
    $r = mysql_fetch_array($query);
    $hvor = "<a href=\"./?emneId=$_GET[emneId]\">Emne: $r[emne]</a> > <b>" . $side_titel . "</b>";
    include "$side/includes/header.php";
?>
<!-- indhold start -->

<table width="100%" cellspacing="1" cellpadding="2" class="tabelBox">
<tr class="tr">
<td>
<b>Tråd:</b>
</td>
<td width="150">
<b>Oprettet af:</b>
</td>
<td width="60">
<b>Indlæg:</b>
</td>
<td width="200">
<b>Sidste svar:</b>
</td></tr>

<?php
$sets = mysql_query("SELECT pr_side, id FROM forum_settings WHERE id = '1' LIMIT 1");
while($rS = mysql_fetch_array($sets)) {
$pr_side = "$rS[pr_side]";
}
$s = $_GET['s'];
if (!isset($s)) {
    $s = "0";
}
if(($_COOKIE['login']) && ($_USER['rang'] == 2) || ($_USER['rang'] == 3)){
$queryThread = mysql_query("SELECT * FROM forum_thread WHERE board = '$_GET[board]' ORDER BY last_reply_stamp DESC LIMIT $s,$pr_side");
} else {
$queryThread = mysql_query("SELECT * FROM forum_thread WHERE board = '$_GET[board]' AND public = '1' ORDER BY last_reply_stamp DESC LIMIT $s,$pr_side");
}
$i = 0;
while($r = mysql_fetch_array($queryThread)) {
$id = $r["id"];
$overskrift = $r["overskrift"];
$bruger = $r["bruger"];
$countReply = mysql_query("SELECT * FROM forum_reply WHERE reply_to = '$id'");
$svar = mysql_num_rows($countReply);
$brugerId = $r["brugerId"];
$last_reply_date = $r["last_reply_date"];
$lock = $r["lock"];
$i++;
if ($i%2 == 1) {
$class = "tdUlige";
} else {
$class = "tdLige";
}

echo "
<tr class=\"$class\" height=\"32\">
<td>
<a href=\"./read.php?emneId=$_GET[emneId]&board=$_GET[board]&id=$id\" title=\"$overskrift\">$overskrift</a> ";
if($lock == 1){
echo "<b>(låst)</b>";
}
echo "
</td>
<td>";
if ($brugerId == -gæst){
echo "
$bruger$brugerId";
} else {
echo "
<a href=\"./users/show.php?brugerId=$brugerId\">$bruger</a>";
}
echo "
</td>
<td align=\"center\">
[$svar]
</td>
<td align=\"center\">";
$c = mysql_query("SELECT * FROM forum_reply WHERE reply_to = '$id'");
$c = mysql_num_rows($c);
$date = date("$_SETS[dato_form]", $r[last_reply_stamp]);
if($c == 0){
echo "[$date]";
echo "<br />af <a href=\"./users/show.php?brugerId=$brugerId\">$bruger</a>";
} else {
$query = mysql_query("SELECT * FROM forum_reply WHERE reply_to = '$r[id]' ORDER BY id DESC LIMIT 1");
$r2 = mysql_fetch_array($query);
echo "[$date]";
if($r2['brugerId'] == '-gæst'){
echo "<font size=\"1\">";
echo "<br />af $r2[bruger]";
} else {
echo "<font size=\"1\">";
echo "<br />af <a href=\"./users/show.php?brugerId=$r2[brugerId]\">$r2[bruger]</a>";
}
echo "</font>";
}
echo "</td></tr>";
}
$antal = mysql_num_rows($queryThread);
if ($antal == 0){
echo "
<tr class=\"trBackground\">
<td colspan=\"4\" align=\"center\">
<br />
<font class=\"alt\">der er ikke oprettet nogen tråde på dette board endnu</font>
<br /><br />
</td></tr>";
}
?></table>
<br />
<?php
if(($_COOKIE['login']) && ($_USER['rang'] == 2) || ($_USER['rang'] == 3)){
$g_total = mysql_query("SELECT COUNT(id) AS total FROM forum_thread WHERE board = '$_GET[board]'");
} else {
$g_total = mysql_query("SELECT COUNT(id) AS total FROM forum_thread WHERE board = '$_GET[board]' AND public = '1'");
}
$total = mysql_result($g_total,0);

if ($s >= $pr_side) {
    $previous_s = $s-$pr_side;
    echo "<a href=\"?s=$previous_s&emneId=$_GET[emneId]&board=$_GET[board]\"><< Sidste $pr_side</a> | ";
}  else {
        echo " <font class=\"alt\"><< Sidste $pr_side</font> | ";
    }
$page = 1;
if($total == 0){
echo "<b>$page</b> ";
}
for($start=0; $total > $start; $start=$start+$pr_side){
    if ($start != $s) {
        echo "<a href=\"?s=$start&emneId=$_GET[emneId]&board=$_GET[board]\">$page</a> ";
    } else {
        echo "<b>$page</b> ";
    }
    $page++;
}
if ($total > $s+$pr_side) {
    $next_s = $s+$pr_side;
    echo " | <a href=\"?s=$next_s&emneId=$_GET[emneId]&board=$_GET[board]\">Næste $pr_side >></a>";
} else {
        echo " | <font class=\"alt\">Næste $pr_side >></font>";
    }
?><br />

<b><br />
<a href="./opret.php?emneId=<?php echo "$_GET[emneId]&board=$_GET[board]"; ?>">Opret tråd på dette board</a><br /><br /></b>

<!-- indhold slut -->
<?php include "$side/includes/footer.php"; ?>
Avatar billede sim00n Praktikant
23. september 2005 - 16:53 #1
Ingen der kan hjælpe ?
Avatar billede micmicmicmic Nybegynder
23. september 2005 - 17:44 #2
der står sku for meget til jeg gider bare tænke på at hjælpe, og din beskrivelse er ikke helt i top :)
Avatar billede sim00n Praktikant
23. september 2005 - 17:51 #3
Der er sgu da intet galt med min beskrivelse???

og man kunne evt prøve på at finde det sted hvor det med forrige og næste side er.. som jeg nu kan se er noget af det nederste... Men jeg har desværre kun lidt forstand på PHP.
Avatar billede sim00n Praktikant
23. september 2005 - 22:24 #4
Men altså hvis du mangler informationer osv. så bare skriv hvad du har brug for... Så får du dem ??? Please en eller anden bare hjælp, det herre vigtigt...
Avatar billede sim00n Praktikant
15. oktober 2005 - 14:34 #5
Nvm..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester