2016-08-11 2 views
0

Ich habe versucht, Bilder aus meiner Datenbank mit PHP zu echo. Ich habe verschiedene Lösungen im Forum ausprobiert, ohne Erfolg. Ich erhalte nur ein leeres Bild als Ausgabe.Echo-Bild von MySQL-Datenbank PHP

while($rows=mysqli_fetch_assoc($getquery)) 
{ 
    $id=$rows['id']; 
    $LastName=$rows['LastName']; 
    $FirstName=$rows['FirstName']; 
    $Year=$rows['Year']; 
    $Press=$rows['Press']; 
    $Description=$rows['Description']; 
    $Title=$rows['Title']; 
    $image=$rows['image']; 


    echo '<div class = "paragraph">' . $LastName . '<br/>'. $FirstName . '<br/>' . $Year . '<br/>' . $Press . '<br/>' . $Title . '<br/>'. $Description . "<img src='image/".$row['image']."' />" . '</div>' ; 
} 
+0

http://stackoverflow.com/questions/7793009/how-to-retrieve-images-from-mysql-database-and-display-in-an-html-tag –

+0

vor dem 'image /".$ versuchen row ['image'] 'mit einem Schrägstrich ~ ie'/image /".$ row ['image'] 'etc – RamRaider

Antwort

0
while($rows=mysqli_fetch_assoc($getquery)){ 
    $id=$rows['id']; 

    /* 
     assuming the `image` directory is relative to the root 
     and not the directory from which the script runs then 
     a leading slash might be the issue. 
    */ 
    echo " 
    <div id='{$id}' class='paragraph'> 
     {$rows['LastName']}<br/> 
     {$rows['FirstName']}<br/> 
     {$rows['Year']}<br/> 
     {$rows['Press']}<br/> 
     {$rows['Title']}<br/> 
     {$rows['Description']} 
     <!--<img src='/image/{$row['image']}' />--> 
     <img src='data:image/jpeg;base64, {$rows['image']}' alt='' title='' /> 
    </div>"; 
} 

Wenn Sie den MIME-Typ des Bildes speichern, wenn Sie es an die DB speichern dann würde ersetzen Sie die richtige Mime/Inhalt in oben geben ~ dh: image/png, image/gif etc, so dass dann könnte etwas werden, wie:

<img src='data:{$rows['mimetype']};base64, {$rows['image']}' alt='' title='' /> 
+0

die Bilder sind nicht einmal in einem Verzeichnis, sie sind in einer Datenbank. Ich brauche sie aus der DB zu echo. – AndrewSwanson94

+0

Sie haben also den base64-kodierten Bildinhalt gespeichert und müssen diesen ausgeben? Im Allgemeinen wäre das Format etwas wie ' ' – RamRaider

+0

ja, das ist im Wesentlichen, was ich brauche. Ich überprüfe jetzt für einen Weg, dies zu erreichen. – AndrewSwanson94

2

Sie das Bild als $row['image'] Echo, aber die nur vor Verweisen auf das Bild, sind $rows['image'] (beachten Sie die s) und $image. Aktualisieren Sie die Echo-Anweisung, um eine dieser Optionen zu verwenden und nicht $row['image'].

Edit: Dies wird Ihr Problem nicht vollständig beheben. Wie in einem Kommentar zu Ihrer Frage erwähnt, müssen Sie einige Finagling durchführen, um das Bild tatsächlich anzuzeigen, wie gezeigt here.

+0

Ich versuchte diese Lösung ohne Erfolg. – AndrewSwanson94