Gegen Bilderklau - Das Original (https://www.gegen-bilderklau.net/index.php)
- Design, Website, Copyright (https://www.gegen-bilderklau.net/board.php?boardid=80)
--- Homepagehilfe (https://www.gegen-bilderklau.net/board.php?boardid=27)
---- Homepagehilfe - Archiv (https://www.gegen-bilderklau.net/board.php?boardid=139)
----- [PHP & MySQL] Ausgabe klappt nicht (https://www.gegen-bilderklau.net/thread.php?threadid=175488)


Geschrieben von Leila am 13.09.2010 um 20:19:

  Ausgabe klappt nicht

Ich lass es mal ohne große Worte:

"Geschrieben am 1.1.1970"

Mit den EInträgen in der DB sollte 1 Datensatz gefunden werden.
Die %, weil in pferde auch mal mehrere Namen stehen können.

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
<?
 include('/users/rge/www/yashiko/seiten/db.php');
 $protokolle = "SELECT * FROM `berichte` WHERE pferde LIKE '%Taki%' ORDER BY datum DESC";
 $bla3 = mysql_query($protokolle);
 if (@mysql_num_rows($bla3) == 0)
  {
 echo "Für Takima wurden bislang keine Protokolle geschrieben";
  }
 else
  {
  while ($row = mysql_fetch_assoc($bla3));
   {
   echo "
  <div style='width='70%; border:1px solid #7c0002;'>
   <h3>$row[titel]</h3>
   $row[text]<p/>
   <i>Geschrieben am ".date("d.m.Y",$row[datum])."</i>
  </div><p/>";
   }
  }
 mysql_close();
?>



Geschrieben von Drops am 13.09.2010 um 20:52:

 

Wird sonst nichts ausgegeben oder ist alles bis auf das falsche Datum in Ordnung? smile



Geschrieben von Leila am 13.09.2010 um 21:02:

 

sonst nix, anders gesagt, alle auszugebenen Werte sind leer.



Geschrieben von Oli am 13.09.2010 um 22:20:

 

Hi,

ich kann zwar so grad nicht sehen, was da falsch ist, aber vielleicht hilfts: Das "Geschrieben am 1.1.1970" bedeutet, dass auch hier nichts ausgegeben wird - der UNIX-Timestamp 0 entspricht genau diesem Datum.

php:
1:
date("d.m.Y",$row[datum])

$row["datum"] ist also leer (keine Ausgabe) und wird, weil eine Zahl benötigt wird, zu 0 konvertiert.

Eventuell mal diese Zeile unter mysql_query einfügen:
php:
1:
echo mysql_error();
Dann kriegst du zumindenst eine Fehlermeldung, falls der Query fehlschlägt. Außerdem würde ich das @ vor mysql_num_rows() rausnehmen, das unterbindet nämlich eine eventuelle Fehlermeldung an dieser Stelle...

LG



Geschrieben von Leila am 13.09.2010 um 22:25:

 

Ich sag ja, alle auszugebenden Werte sind leer Augenzwinkern

mysql_error spuckt auch nix aus



Geschrieben von Oli am 13.09.2010 um 22:31:

 

Heißen die Felder in der Datenbanktabelle auch tatsächlich "datum", "titel" und "text" in dieser Schreibweise? Groß-/Kleinschreibung würde einen Unterschied machen.

Übrigens hier hab ich einen Fehler gefunden, der kann aber nichts mit den fehlenden Werten zutun haben:
code:
1:
2:
style='width='70%; border:1px solid #7c0002;'
             ^-- einfaches Anführungszeichen zuviel


Probier doch mal folgende Änderung:
php:
1:
2:
3:
4:
while ($row mysql_fetch_assoc($bla3));
   {
  echo "<pre>".print_r($row,true)."</pre>";
   }


Das sollte dir das komplette Array $row ausgeben, mal sehen was da drin ist ... Poste dann bitte mal die Ausgabe Augenzwinkern .

Edit: Tippfehler



Geschrieben von Leila am 13.09.2010 um 23:21:

 

argh, man sieht oft die kleinsten Dinge nicht, selbst wenn 4 Leute draufschauen...
Semikolon hinter der Anweisung der while-Schleife, hab ich aber auch nur entdeckt, weil ich dahinter ansetzen wollte das von dir vorgeschlagene einzubauen.

kann zu


Forensoftware: Burning Board, entwickelt von WoltLab GmbH