Zuviele Seiten
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
beitrag
count
date
grade verlockend
hilfe
limit
login
mitglied
pawort
post
result
rufen
set
sites echo
test
transitional
username
verbockt verborgen hast
view
zuviel
-
HI,
bei meinem Forum habe ich noch ein Problem. Wenn ich sage der User will nur einen Post pro Seiten sehen habe ich immer zwei Seiten zuviel. Oder besser gesagt es ist immer so. Er hat dann immer zwei Seiten zuviel und ich wei? nicht warum:
Ausgeben der Posts
<?php error_reporting(E_ALL); include ("function/function/verbindung.php"); session_start(); [b]include("seiten_trenner_posts.php");[/b] $sql="SELECT title FROM threads WHERE id =".$_GET['thread_id'] ." "; $result = mysql_query($sql) or die(mysql_error().'<br />Query: '.$sql); while ($thread = mysql_fetch_array($result)) { $title = $thread['title']; } $sql="SELECT views FROM threads WHERE id =".$_GET['thread_id'].""; $result = mysql_query($sql) or die(mysql_error().'<br />Query: '.$sql); while ($thread = mysql_fetch_array($result)) { $views = $thread['views']; } $views = $views + 1; $sql = "UPDATE threads SET views = '".$views."' WHERE id ='".$_GET["thread_id"]."'"; mysql_query($sql) OR die(mysql_error()); $sql="SELECT id, post, autor_id, date FROM posts WHERE thread_id =".$_GET['thread_id']." LIMIT [b]$start,$limit[/b]"; $result = mysql_query($sql) or die(mysql_error().'<br />Query: '.$sql); while($post = mysql_fetch_array($result)) { $beitrag_id[] = $post['id']; $beitrag[] = $post['post']; $beitrag_autorid[] = $post['autor_id']; $beitrag_date[] = $post['date']; } for ($i = 0; $i < count($beitrag_autorid); $i++) { $sql="SELECT username, avatar, rang, posts, gender, admin FROM user WHERE id =".$beitrag_autorid[$i].""; $result = mysql_query($sql) or die(mysql_error().'<br /><b>Query:</b> '.$sql); while($autor = mysql_fetch_array($result)) { $autor_avatar[]= $autor['avatar']; $autor_username[]= $autor['username']; $autor_rang[] = $autor['rang']; $autor_posts[] = $autor['posts']; $autor_gender[] = $autor['gender']; $autor_admin[] = $autor['admin']; } } $j=0; ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Forum</title> <link href="style/style.css" rel="stylesheet" type="text/css"> <script language="JavaScript"> <!-- function SmilieEinfuegen(Smilie) { document.message.message.value+=Smilie+" "; document.message.message.focus(); } function BBCODES(bbcodes) { document.message.message.value+=bbcodes+" "; document.message.message.focus(); } //--> </script> </head> <body> <center> <div id="top_line"> <center><a class="top_line" href="forum.php">Forum</a></center> </div> <div id="link_line"> <center> <?php if(isset($_SESSION["user_username"]) && $_SESSION["user_password"] != "") { } else { echo'| <a class="link_line" href="forum.php?action=register">Registrieren</a> '; } if(isset($_SESSION["user_username"]) && $_SESSION["user_password"] != "") { } else { echo'| <a class="link_line" href="forum.php?action=login">Login</a>'; } ?> | <a class="link_line" href="forum.php?action=profil">Profil</a> | <a class="link_line" href="forum.php?action=members">Mitglieder</a> | <a class="link_line" href="forum.php?action=search">Suchen</a> | <a class="link_line" href="forum.php?action=help">Hilfe</a> <?php if(isset($_SESSION["user_username"]) && $_SESSION["user_password"] != "") { echo'| <a class="link_line" href="forum.php?action=logout">Logout</a> |'; } else { echo'| '; } ?> </center> </div> <br> <?php echo' <br> <table class="threads"> <tr> <td class="title"><center><b>'.$title.'</b></center></td> </tr> </table> <br> <table class="user_show"> <tr> <td class="threads"> Autor</td> <td colspan="2" class="threads"> Beitrag</td> </tr>'; for ($i = 0; $i < count($beitrag_autorid); $i++) { include_once("function/function/bbcodes.php"); $beitrag[$i] = php ( $beitrag[$i] ); $beitrag[$i] = bbcode ( $beitrag[$i] ); include_once("function/function/smilies.php"); $beitrag[$i] = smilies ( $beitrag[$i] ); if($j%2==0){$bgcolor="#cecece";} else{$bgcolor="#acacac";} echo' <tr> <td bgcolor='.$bgcolor.' width="20%" style="border: 1px solid black"><br><center>'; if($autor_avatar[$i] == "" && $autor_admin[$i]== '1')echo '<img src="style/admin_avatar.jpg" border="1px" bordercolor="#000000" width="100px" height="100px">'; else if($autor_avatar[$i] == "")echo '<img border="1px" bordercolor="#000000" src="style/user_avatar.jpg" width="100px" height="100px">'; else{ echo' <img src="'.$autor_avatar[$i].'" border="1px" bordercolor="#000000" width="100px" height="100px">';} echo'<br><br> <table class="user_interface2"> <tr> <td bgcolor="#ededed"><i>Autor</i></td> <td bgcolor="#ededed">:</td> <td bgcolor="#ededed"> '.$autor_username[$i].'</td> </tr> <tr> <td bgcolor="#ededed"><i>Rang</i></td> <td bgcolor="#ededed">:</td> <td bgcolor="#ededed"> '.$autor_rang[$i].'</td> </tr> <tr> <td bgcolor="#ededed"><i>Geschlecht</i></td> <td bgcolor="#ededed">:</td> <td bgcolor="#ededed"> ';if($autor_gender[$i] == '0'){ echo "m?nnlich";} else if($autor_gender[$i] == '1') {echo "weiblich";}echo'</td> </tr> <tr> <td bgcolor="#ededed"><i>Post vom:</i></td> <td bgcolor="#ededed">:</td> <td bgcolor="#ededed"> '.date("H:i ; d.m", $beitrag_date[$i]).'</td> </tr> </table> </center> </td> <td bgcolor='.$bgcolor.' style="vertical-align:top;border: 1px solid black;padding-left:5px;font-weight:normal" > '.stripslashes($beitrag[$i]).' </td> </tr>'; $j++; } echo' </table><br>'; [b]include('seiten_posts.php');[/b] echo"<br>"; if(isset($_SESSION["user_username"]) && $_SESSION["user_password"] != "") { echo'<br><center> [ <a class="small" href="new_post.php?forum_id='.$_GET["forum_id"].'&thread_id='.$_GET['thread_id'].'">Antworten</a> ]</center><br>'; echo "<br>"; include("function/user/user.php"); } echo "<br>"; include("function/online/online_now.php"); ?> </body> </html>
hier jetzt seiten_post.php:
<?php echo '<span style="color:#1f75de"><b>Seite:</b></span> '; $prev_site = $site-1; $next_site = $site+1; $addy = "posts.php?forum_id=".$_GET["forum_id"]."&thread_id=".$_GET["thread_id"].""; if($site > 1)echo '<A CLASS="small" HREF="'.$addy.'">??</A> <A CLASS="small" HREF="'.$addy.'&site='.$prev_site.'">?</A>'; $count = 1; while($count <= $sites) { if($site != $count) { echo '<A CLASS="small" HREF="'.$addy.'&site='.$count.'"><span style="color:#1f75de">'.$count.'</span></A>'; } else{ echo $count; } echo ' '; $count++; } if($site < $sites)echo '<A CLASS="small" HREF="'.$addy.'&site='.$next_site.'">?</A> <A CLASS="small" HREF="'.$addy.'&site='.$sites.'">??</A><br><br>'; ?>
und hier seiten_trenner_posts.php
<?php error_reporting(E_ALL); if(isset($_SESSION["user_username"]) && $_SESSION["user_password"] != "") { $sql = "SELECT posts_site FROM user WHERE username = '".$_SESSION["user_username"]."' AND password = '".$_SESSION["user_password"]."'"; $result = mysql_query($sql) or die(mysql_error().'<br />Query: '.$sql); while ($posts = mysql_fetch_array($result)) { $seiten = $posts["posts_site"]; } } else { echo""; } if(@!$site)$site = 1; if(isset($_SESSION["user_username"]) && $_SESSION["user_password"] != "") { $limit = $seiten; } else { $limit = 10; } // ?ndere diese zahl um die zahl der maximalen beitr?ge auf einer seite zu ?ndern $start = ($site-1)*$limit; $sql_sites = "SELECT * FROM user"; $result_sites = mysql_query($sql_sites); $num_sites = mysql_num_rows($result_sites); $sites = ceil($num_sites/$limit); ?>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich k?nnte echt eure Hilfe gebrauchen Danke...
-
na ja, es ist nicht grade verlockend
sich durch dein ganzen script durchzulesen,
zumal ich nicht mal die fehlerbeschreibung
kapiert hab...
schreib ma n link dazu, damit man sich angucken kann
was du meinst...
und dann gucken wir mal wo du den fehler verbockt/verborgen hast -
hi!
k?nnt es sein dass es daran liegt?:
$sql_sites = "SELECT * FROM user";
$result_sites = mysql_query($sql_sites);
$num_sites = mysql_num_rows($result_sites);
$sites = ceil($num_sites/$limit);
... in "user" sind wahrscheinlich die im forum angemeldeten leute gespeichert, oder? (5 st?ck)
$result_sites hat diese 5 leute
$num_sites hat also die zahl 5 als wert
$sites hat aufrunden (5 / 1) = 5
... also 5 seiten, obwohl nur 3 posts.
Sehr fette Signatur ?brigens, newwarrior!!! <>< -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage