Webdesign in Siegen

Fehler durch include

Fragen zum Thema PHP können hier gestellt werden

Moderator: Basti

Fehler durch include

Beitragvon aequitas am 03.08.2008, 00:30

Schönen Abend,

ich hätte einmal eine Frage. Ich habe mir ein php-Gästebuchscript runtergeladen und per include-Befehl in meine Seite eingebunden. Wenn ich die Seite allerdings jetzt aufrufe, erscheint ein Fehler im Browser, an der Stelle, an der eigentlich die Gästebucheinträge sein sollten. Wird das Script via Adresszeile direkt aufgerufen funktioniert es einwandfrei.

Ich poste mal einen Link zu einer Testseite, um den Fehler zu zeigen:
http://nkb.nk.funpic.de/test/index.php?page=gaestebuch

Kann mir jemand helfen?

MfG
aequitas
Mitglied
 
Beiträge: 9
Registriert: 27.03.2008, 01:15

Re: Fehler durch include

Beitragvon Manuel am 03.08.2008, 01:12

Hi du!

Ist die Datenbank richtig angegeben und angelegt? Denn das ist ja eindeutig ein MySQL-Fehler. Müsste man sich den Quellcode an der Stelle genauer anschauen.

Lg,
Manuel ;-]
Benutzeravatar
Manuel
Site Admin
 
Beiträge: 9114
Registriert: 10.12.2004, 19:29
Wohnort: Asbach

Re: Fehler durch include

Beitragvon aequitas am 03.08.2008, 01:37

Bei dem Script waren 2 Index-Dateien dabei.
1) index.php - diese funktioniert einwandfrei
2) index_inc.php - diese erzeugt den Fehler, braucht man allerdings, um das Gästebuch zu includen

So stands bei der Beschreibung dabei. Wenn ich die "normale" include werden mehrere Fehler ausgegeben. Ähnlich dem Script, welches ich vorher ausporbiert hatte. Bei diesem werden nur die Einträge nicht angezeigt. Der Quellcode ist relativ lang, ich denke nicht, dass sich den jemand komplett durchlesen will. Mal ein Auszug um Zeile 35:

Code: Alles auswählen
  //Anzahl der Einträge ermitteln
  $query=mysql_query("SELECT id FROM pbook");
  $number=mysql_num_rows($query);
  //Einträge auslesen
  $query=mysql_query("SELECT * FROM pbook ORDER BY id DESC LIMIT $page_limit, $entries");
  $pages=ceil($number/$entries);
  $page_links='';
  //Seitenzahlen ausgeben
  for ($i=1;$i<=$pages;$i++){
   $page_links=$page_links.' ';
   if ($_GET['page']==$i) $page_links=$page_links.$i;
   else $page_links=$page_links.'<a href="'.$filename.$break.'page='.$i.'">'.$i.'</a>';
  }
  //Neuer Eintrag Link
  echo '<a href="'.$filename.$break.'action=new">Einen neuen Eintrag schreiben</a><br />
  <br />
  Einträge: '.$number.'<br />
  Seiten: '.$page_links;
  while($row=mysql_fetch_array($query)) {


PS. Die zwölfte Zeile hier ist Zeile 35
aequitas
Mitglied
 
Beiträge: 9
Registriert: 27.03.2008, 01:15

Re: Fehler durch include

Beitragvon Manuel am 03.08.2008, 02:14

Ich gehe mal davon aus, dass der Fehler dann davon kommt:
$query=mysql_query("SELECT id FROM pbook");


Ich würde dort auch immer den Datenbanknamen angeben bzw. die Verbindung. Das ist vor allem dann wichtig, wenn man mit mehreren Datenbanken arbeitet. Aber gut. ;)
Ist die Tabelle denn so angelegt?

Lg,
Manuel ;-]
Benutzeravatar
Manuel
Site Admin
 
Beiträge: 9114
Registriert: 10.12.2004, 19:29
Wohnort: Asbach

Re: Fehler durch include

Beitragvon aequitas am 03.08.2008, 13:20

Ich habe von php und sql keine Ahnung :(
Die Datenbank wurde durch eine install.php Datei angelegt und müsste auch funktionieren, weil die index.php ja soweit funktioniert. Ich schätze einfach, dass irgendwo in diesen paar Zeilen ein kleiner Fehler ist. (in der index_inc.php)
aequitas
Mitglied
 
Beiträge: 9
Registriert: 27.03.2008, 01:15

Re: Fehler durch include

Beitragvon Basti am 03.08.2008, 14:05

Häng doch mal ein OR die(mysql_error()) an die Query-Funktion dran. Dann wird mit Sicherheit eine Fehlermeldung für eben diesen Query ausgegeben, mit deren Hilfe wir dem Problem schnell auf die Spur kommen.

Code: Alles auswählen
$query=mysql_query("SELECT id FROM pbook") OR die(mysql_error());
Benutzeravatar
Basti
Moderator
 
Beiträge: 1974
Registriert: 15.06.2006, 17:33
Wohnort: Rheinbreitbach


Zurück zu PHP

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast