Hilfe das GB will nicht !

Bruderjones

Mitglied
Ich bitte um Hilfe, kein Plan was da falsch ist aber die Ausgabe der
Daten will nicht. Es zeigt sie einfach nicht an.
Ich bekomme das nur so zu sehen:

Zur Zeit sind 24 Einträge im Gästebuch
Seite - Einträge von 0 bis 3
Eintrag von:
Naricht:
Eintrag von:
Naricht:
Eintrag von:
Naricht:
0 1 2 3 4 5 6 7 8 next>

Unter so sieht meine PHP datei aus:

PHP:
<html>
<head>
<title>g-book</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form action="<?php echo $PHP_SELF ?>" method="post" name="eintragung" enctype="multipart/form-data">
  <!-- Anfang des Formulars -->
  <input type="text" name="name">
  <br>
  <input type="text" name="email">
  <br>
  <input type="text" name="www">
  <br>
  <br>
  <textarea name="message"></textarea><br>
  <input type="submit" name="neueintrag" value="Eintragen">
  <input type="reset" value="L&ouml;schen">
</form>
<?php 
$verbindung = mysql_connect();
$test=1;
if ($name == "" or $message == "")
{
print("Du musst einen Namen und eine Nachricht eingebn !<br>");
$test=0;
}
if ($test == 1)
{
mysql_select_db(gbook2);
if($neuintrag) //ueberprueft ob der submit button gedrückt wurde
//&#123 Wenn ja dann daten in den gbook2 table eintragen

    $id = time(); //time() gibt die zeit seit dem beginn des Unix Zeitalters in sekunden zurück
                  //wir benutzen id als Datums und Identifikations-Angabe, doch mehr dazu später

    $name = addslashes($name);             //Zeichen die im Programm Probleme verursachen könnten in PHP Spezialzeichen umwandeln
    $email = addslashes($email);         // -"-
    $www = addslashes($www);    		// -"-
    $message = addslashes($message);    // -"-
    
    $sqlkommando = "INSERT INTO gbook2 (id, name, email, www, message) VALUES ('$id', '$name', '$email', '$www', '$message')";
    // Auf gut deutsch: Füge in gbook2 bei "id, name, email, www, message" die werte der variablen "$id, $name, $email, $www, $message" ein

    mysql_query($sqlkommando) or die("Error: " . mysql_error()); // Kommando 'sqlkommando' ausfuehren
                                                                 // bei misserfolg beenden und fehlermeldung ausgeben
    
    echo "Eintragung erfolgreich hinzugefügt<br>"; // Bestätigung ausgeben
}
?>
<br>
<?PHP
$sqlhost='localhost';
$username='server';
$passwort='xxx';
$database='server_de_db';
$proseite=3;

$db = mysql_connect ($sqlhost,$username,$passwort);
mysql_select_db ($database);
$sql = "SELECT * FROM gbook2";
$result = mysql_query($sql,$db);
$number = mysql_num_rows($result);
$seiten=floor($number/$proseite);
$start=$page * $proseite;
$sql="SELECT * FROM gbook2 LIMIT $start,$proseite";
$result = mysql_query($sql,$db);
$ende = $start + $proseite;
if ($ende>$number) { $ende = $number; }
echo "Zur Zeit sind $number Einträge im Gästebuch <BR> \n";
echo "Seite $page - Einträge von $start bis $ende <BR> \n";
ich denke in den nächsten drei zeilen steckt der Fehler, aber
wo ist die Frage ?? Bitte Bitte Helft mir

PHP:
while ($row = mysql_fetch_row($result)) {
	echo "Eintrag von: ".$row['name']." <BR> \n";
	echo "Naricht: ".$row['message']."<BR> \n";
	}
if ($page>0) {
	$i=$page-1;
	echo "<A HREF=\"g-book.php?page=$i\">&lt;previous</A>";
}
for($i=0; $i<=$seiten; $i++) {
	if ($i==$page) {
		echo $i."&nbsp;";
	}
	else {
		echo "<A HREF=\"g-book.php?page=$i\">$i</A>&nbsp;";
	}
}
if ($page<$seiten) {
	$i=$page+1;
	echo "<A HREF=\"g-book.php?page=$i\">next&gt;</A>";
}
?>
</body>
</html>

Bitte ich sitze schon so ewig daran weil ich der Meinung war gleich habe ich es, bitte helft mir.
 
Zuletzt bearbeitet:
soweit ich das noch in erinnerung habe gibt dir $row = mysql_fetch_row($result) kein array zurück in dem die Spaltennamen als key benutzt werden. entweder machst du es dann so $row[0] $row[1].... oder du benutz mysql_fetch_array($result) dann sollte deine Version funktionieren.

tob
 
Danke für die Antwort

Ich habe es jetzt nach weiter stunden endlich geschaft. Und deine Idee stimmt wahrscheinlich auch ich habe es auf diese weise gemacht:

while ($row = mysql_fetch_object($result))

Danke cu ;-)
 
ich kanns kaum glauben, aber Tob hat recht, und das ist in meinem Tutorial falsch !!!

Ich habs im Tutorial verbessert!!! ;)

komisch, daß das bisher noch keinem aufgefallen ist ... das Tutorial steht da ja schon über ein halbes Jahr. :rolleyes:


Dunsti
 
Das freut mich, dann müssen andere nicht mehr, wie ich stunden lang rum feilschen weil sie PHP noch nicht wirklich peilen und den Fehler nicht finden können. Aber ich denke ander haben den Fehler sicher schon gefunden und ich finde es schade das sie sich nicht gemeldet haben, dass es berichtigt wird.

Man sieht sich bye ;)
 
Zurück