problem mit boardscript

Rev

Erfahrenes Mitglied
hi!
ich habe 2 probleme mit nem script von mir: das ist komplett selbst geschrieben bis auf die seitenfunktion, die iss von dunsti glaub ich.. und seid die drin ist funktioniert nix mehr..
-der neueste eintrag wird nicht angezeigt
-der sotiert völlig falsch, mischt die sotierung ab der 2ten seite (neue einträge erscheinen auf einmal auf seite 2 usw..)

Das Script

PHP:
<?php


// Deklaration der Variablen
require("../datenbank_user.php");
include("../funktionen.php");
$pro_seite=10;
$template="templates\index.html";
$templateeintrag="templates\eintrag.html";

$board="board".$boardid;
$link=mysql_connect ($host,$user,$password);
$query="SELECT * from $board";
$result=mysql_db_query ($dbname,$query,$link);
while($row=mysql_fetch_array($result))
{
$beschreibung="$row[beschreibung]";
$maxanzahl="$row[maxanzahl]";
$boardtitel="$row[boardtitel]";
}

// Auslesen der Einträge aus der Datenbank
$temp="boardeintrag";
$boarde=$temp.$boardid;

// Anzahl der Einträge überprüfen
$resultcount=mysql_query("SELECT * FROM $boarde");
$anzahl=mysql_num_rows($resultcount);
$seiten=ceil($anzahl / $pro_seite);
$limitanfang=$anzahl - ($seite * $pro_seite);
$limitanfang=$anzahl - ($seite * $pro_seite);
if ($limitanfang<0) {
   $limitanzahl=$pro_seite+$limitanfang;
   $limitanfang=0;
}

else
{
   $limitanzahl=$pro_seite;
}

// Berechnung der Seitenfunscrollfunktion im Template

if ($seite>1)
{
$i=$seite-1;
$zurueck="<A HREF=\"index.php?seite=$i&boardid=$boardid\">zurück</A>";
}


if ($seite<$seiten) 
{
   $i=$seite+1;
   $vor="<A HREF=\"index.php?seite=$i&boardid=$boardid\">weiter</A>";
}
if ($seite==$seiten)
{
$vor="";
}


// Auslesen & Ersetzen der Platzhalter
$query2="SELECT * from $boarde ORDER BY datum DESC LIMIT $limitanfang,$limitanzahl ";
$result2=mysql_db_query ($dbname,$query2,$link);
$ausgabe=mysql_fetch_array($result2);

while($ausgabe=mysql_fetch_array($result2))
{
$fk = fopen($templateeintrag,"r");
$boardeintrag = fread ($fk, filesize ($templateeintrag));
fclose ($fk);
$datum=date('Y-m-d H:i:s',$ausgabe[datum]);
$jahr=substr($datum,0,4);
$monat=substr($datum,5,2);
$tag=substr($datum,8,2);
$stunde=substr($datum,11,2);
$minute=substr($datum,14,2);
$uhrzeit=$stunde.":".$minute." Uhr";
$datum=$tag.".".$monat.".".$jahr;
$boardeintrag = str_replace("§DATUM§",$datum,$boardeintrag);
$boardeintrag = str_replace("§UHRZEIT§",$uhrzeit,$boardeintrag);
$boardeintrag = str_replace("§EINTRAG§",$ausgabe[eintrag],$boardeintrag);
$boardeintrag = str_replace("§NICKPOST§",$ausgabe[nickpost],$boardeintrag);
$eintraege=$eintraege.$boardeintrag;
}

// Ausgabe des Templates

$fd = fopen($template,"r");
$seite = fread ($fd, filesize ($template));
fclose ($fd);
$seite = str_replace("§BOARDID§",$boardid,$seite);
$seite = str_replace("§VOR§",$vor,$seite);
$seite = str_replace("§ZURUECK§",$zurueck,$seite);
$seite = str_replace("§BOARDEINTRAG§",$eintraege,$seite);
$seite = str_replace("§BOARDTITEL§",$boardtitel,$seite);
$seite = str_replace("§SESSIONID§",$sessionid,$seite);
$seite = str_replace("§MELDUNG§",$meldung,$seite);
$seite = str_replace("§URL§",$url,$seite);
echo $seite; 

mysql_close($link);
?>

Das Script zum eintragen:
PHP:
<?php


// Deklaration der Variablen

require("../datenbank_user.php");
require("../funktionen.php");
$template="templates\eintrag_submit.html";
$datum=time(); 
$url="index.php?sessionid=$sessionid&boardid=$boardid&seite=1";
$meldung="Vielen Dank für Deinen Eintrag";

// Usereingabe auf HTML überprüfen und ausfiltern, Links klickbar machen
//$text = nl2br (strip_tags ($text));
$text = str_replace("<","?",$text);
$text = str_replace("[BR]","<BR>",$text);
$text=replace_url("$text");

// Auslesen & Ersetzen der Platzhalter
$board="boardeintrag".$boardid;
$link=mysql_connect ($host,$user,$password);
$query="INSERT INTO $board (id,eintrag,nickpost,datum) values ('NULL','$text','$nick','$datum')";


if (mysql_db_query($dbname,$query,$link)) 
{

// Ausgabe des Templates

$fd = fopen($template,"r");
$seite = fread ($fd, filesize ($template));
fclose ($fd);
$seite = str_replace("§URL§",$url,$seite);
$seite = str_replace("§MELDUNG§",$meldung,$seite);
echo $seite; 
}

ELSE

{
$error=mysql_error();
print($error);
}


mysql_close($link);
?>
 
meiner Meinung nach hast Du ein Problem mit Deinen Varialennamen: Du verwendest $seite doppelt ;)

Daß das zu solchen Problemen führt, die Du beschrieben hast ist klar.

Dunsti
 
Zurück