Bild ausgeben (Php + MySql)

Danke für deine Hilfe aber ich bekomme es nicht richtig hin keine Ahnung wieso kannst du mir dein script an mein Script anpassen.

Noch eine Frage nimmst du jetzt die Version mit blub oder wie, den habs jetzt schon so hinbekommen dass es mit dem Pfad in der Datenbank funktionniert, doch das mit der while Schleife bekomme ich nicht hin.

Bei mir sieht das jetzt so aus :

Verbindung zur Tabelle :
PHP:
$conn=mysql_connect("$host","$user","$pw");
  mysql_select_db("$db",$conn); 
  $resultat=mysql_query("select Titel,Interpret,Preis,Spieldauer,Qualität,Label,Bild,Warenkorb from Katalog");
  $Bilder=mysql_query("select Bild from Katalog where id=1-1");
  //$row = mysql_fetch_array($Bilder);

Hund hier meine Tabelle auf der Homepage :
PHP:
<table width="557" border="1">
      <tr>
        <td width="51"><strong>Titel</strong></td>
        <td width="67"><strong>Interpret</strong></td>
        <td width="67"><strong>Preis</strong></td>
        <td width="70"><strong>Spieldauer</strong></td>
        <td width="53"><strong>Qualit&auml;t</strong></td>
        <td width="51"><strong>Label</strong></td>
        <td width="105"><strong>Bild</strong></td>
        <td width="41"><strong>Warenkorb</strong></td>
      </tr> 
	 <? 
while(list($Titel, $Interpret, $Preis, $Spieldauer, $Qualität, $Label, $Bild,$Warenkorb) = mysql_fetch_row($resultat))
	 {
echo "<tr><td>$Titel</td><td>$Interpret</td><td>$Preis</td><td>$Spieldauer</td><td>$Qualität</td><td>$Label</td><td> "?> <img src='bilder/".$Bild.".jpg' alt=''> <? " </td><td>$Warenkorb</td></tr>";
                }  
			?>
    </table>
 
Zuletzt bearbeitet:
Du hast 2 SQL abfragen und in der Whileschlaufe greifst du nur auf eine zu.

HTML:
$resultat=mysql_query("select k.Titel,k.Interpret,k.Preis,k.Spieldauer,k.Qualität,k.Label,k.Bild,k.Warenkorb from Katalog AS k where id=1-1");

für was brauchst du:
"select Bild from Katalog where id=1-1"?

PHP:
while(list($Titel, $Interpret, $Preis, $Spieldauer, $Qualität, $Label, $Bild,$Warenkorb) = mysql_fetch_row($resultat))
     {
echo "<tr><td>$Titel</td><td>$Interpret</td><td>$Preis</td><td>$Spieldauer</td><td>$Qualität</td><td>$Label</td><td> "?> <img src='bilder/".$Bild.".jpg' alt=''> <? " </td><td>$Warenkorb</td></tr>";
                }

und wenn der Pfad direkt in der DB steht so:
PHP:
while(list($Titel, $Interpret, $Preis, $Spieldauer, $Qualität, $Label, $Bild,$Warenkorb) = mysql_fetch_row($resultat))
     {
echo "<tr><td>$Titel</td><td>$Interpret</td><td>$Preis</td><td>$Spieldauer</td><td>$Qualität</td><td>$Label</td><td> "?> <img src='".$Bild."' alt=''> <? " </td><td>$Warenkorb</td></tr>";
                }

Dein zweiter Select verwirrt mich.

So müsste es gehen. Was geht denn jetzt? siehst du einfach kein Bild und alles andere oder siehst du gar nichts? Wenn das Bild ein Kreuz hat, mach mal Rechtsklick und schau dir den Pfad an das das Bild aufruft. Was steht da und was soll da stehen?

Hoffe aber klappt nun:)
 
Hab ein Screenshot gemacht bekomme einfach nicht hin dass das entsprechende Bild angezeigt wird.
 

Anhänge

  • Sans titre.JPG
    Sans titre.JPG
    17,3 KB · Aufrufe: 37
Öffne es mal im IE, da wirst du ein X sehen beim Bild weil er es nicht laden konnte... Rechtsklick auf das X und Eigenschaften... schau dir dort den Pfad an der sehr warscheinlich falsch ist, danach musst du dein Script anpassen damit das stimmt;)
 
Hm... also du brauchst in der DB nur folgendes

images/bildname.jpg

Danach sollte $bild folgendes sein images/bildname.jpg

Du brauchst nur den Pfad von dem File aus wo deine Homepage ist in das File wo die Bilder sind.

Ordner der Homepage
-index.html
-ORDNER (images)
----Bild1.jpg

So müsste in der DB aus der Datei index.html das Pfad zum Bild "images/Bild1.jpg" lauten.

Wenn du das hast musst du dein Querry überprüfen weil du kein Bild bekommst sondern nur die Variable

HTML:
echo "<img src=".'$Bild'." alt=''>";

So WÄRE es richtig. Dann entspricht $Bild dem Pfad in der DB also "images/Bild1.jpg"

Hast du deinen zweiten Select entfernt?
Alle anderen Daten stimmen ja in deinem Screenshoot.

Das brauchst du:
PHP:
$resultat=mysql_query("select k.Titel,k.Interpret,k.Preis,k.Spieldauer,k.Qualität,k.Label,k.Bild,k.Warenkorb from Katalog AS k where id=1-1");

Und eben das:
PHP:
while(list($Titel, $Interpret, $Preis, $Spieldauer, $Qualität, $Label, $Bild,$Warenkorb) = mysql_fetch_row($resultat))
     {
echo "<tr><td>$Titel</td><td>$Interpret</td><td>$Preis</td><td>$Spieldauer</td><td>$Qualität</td><td>$Label</td><td> <img src=".$Bild." alt=''></td><td>$Warenkorb</td></tr>";
                }
 
Tut mir leid, aber ein Grinsen kann ich mir gerade nicht verkneifen.^^
Ich weiß, aller Anfang ist schwer und verdammt unübersichtlich.

Das "$Bild" in deinem Quelltext zeigt dir an, dass der Befehl nicht geparst wird. Der Interpreter (Webserver) sieht das nicht als PHP an.

Streiche mal das
PHP:
.$Bild.

und setze dies ein:
PHP:
<?php echo $Bild ?>


[edit] oder nimm am Besten die Variante von Malaxo. Dann wechselst du nicht so viel zwischen html und php. Du solltest auf jeden Fall verstehen, wo der Fehler liegt. wenn nicht: Nachfragen! [/edit]
 
Zuletzt bearbeitet:
Zurück