Problem mit SQL mal wieder

  • Themenstarter Themenstarter mastermix252
  • Beginndatum Beginndatum
M

mastermix252

Guest
Code:
$sql = "SELECT * FROM Uebersicht WHERE Uebersicht_ID = 1";
  $result = mysql_query($sql);
  while($row = mysql_fetch_array($result)){
    echo $row['Name'];
    $row['UebersichtBild'];
    $row['ExtraBild'];
    $row['TarifBild'];
    $row['HandyBild'];
  }


was mache ich hier falsch ? es wird nix ausgegeben... Die Datenbank verbindung steht und ich bin mir sicher dass im Feld Name ein Wert drinne steht. aber trotzdem wird nix ausgegeben.
 
Guck doch mittels print_r() mal, was in $row so alles drin steht. Vielleicht heißt das Feld "name" und nicht "Name"...
 
Muss der Wert der Uebersicht_ID nicht in " " stehen?
So :
Code:
'SELECT * FROM Uebersicht WHERE Uebersicht_ID = "1"'
 
Das erste, was du bei Problemen mit MySQL immer machen solltest:
Alle Abfragen auf Erfolg überprüfen und im Falle eines Fehlers
Code:
echo "Fehler in Datenbank-Abfrage: [".mysql_errno()."] ".mysql_error();
ausgeben;
und dann erstmal über den Fehler selber nachdenken und wenn du dann noch immer Hilfe brauchst, diesen Fehler mit hier posten - damit kommt man um einiges schneller zur Problemlösung!

hier nochmal dein Code ein wenig überarbeitet
PHP:
//Man beachte die Verwendung von ` und ' im Query
$sql="SELECT * FROM `Uebersicht` WHERE `Uebersicht_ID` = '1'"; 
  if($result = mysql_query($sql))
  {
    while($row = mysql_fetch_array($result))
    {
      /*
          Wenn du alle Felder ausgeben willst, muss auch überall ein Echo davor
          und ein Zeilenumbruch oder ein anderes Trenn-Zeichen zwischen den Feldern
          sowie eine Horizontale Linie am Ende des Datensatzes erhöhen die Übersichtlichkeit!
      */
      echo $row['Name']."<br />";
      echo $row['UebersichtBild']."<br />";
      echo $row['ExtraBild']."<br />";
      echo $row['TarifBild']."<br />";
      echo $row['HandyBild']."<br />";
      echo "<b>oder:</b> ".print_r($row);
      echo "<hr />";
  }
  else
  {
    echo "Fehler in Datenbank-Abfrage: [".mysql_errno()."] ".mysql_error();
  }

außerdem solltest du dich mal mit dem zweiten Parameter von mysql_fetch_array() beschäftigen - in deinem Fall würde ich den Ergebnistyp auf MYSQL_ASSOC setzen oder gleich mit mysql_fetch_assoc() arbeiten

http://de2.php.net/mysql_fetch_array
http://de2.php.net/mysql_fetch_assoc
 
also ich hab folgendes herausgefunden

Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

Das kommt auf meiner index.php als Fehler! Was ich nicht verstehe ist, dass das EINSCHREIBEN von Werten in die Datenbank Problemlos funktioniert auf meiner admin.php. könnt ihr mir bitte helfen


EDIT: hahahaha oh maaaaaaaaaaaaaaaaaaaaaaan ich hab den behinderten Fehler gefunden :D hahaha so dumm des war gestern nachts und ich konnte nicht mehr viel sehen :D

include_once("../config.incl.php"); das hier hatte ich da stehen obwohl
include_once("config.incl.php"); dort stehen müsste haha.

trotzdem dankee:D viel spaß und frohes karneval Hellau
 
Zurück
Oben