DomHa12 Geschrieben 28. Dezember 2024 Geschrieben 28. Dezember 2024 Hallöle Dominik Mein Name. Ich Bin noch neu im Thema PHP und MYSQL. Aktuell sitze ich an einer Artikel Abfrage aus einer von Mir erstellten Daten Bank. Ich habe Vor das Verschiedene Attribute abgefragt werden darunter erstmal der Name des Artikels der Preis Und dazu noch ein Produktbild. Hier ist mein Aktueller Code den Ich verwende. <section id="products"> <?php require("mysql.php"); $stmt = $mysql->query("SELECT * FROM products"); $stmt->execute(); while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo '<div class="card">'; echo '<img class="cardimg" src="data:image/jpeg;base64,' . base64_encode($row['product_image']) . '" alt="' . htmlspecialchars($row['product_name']) . '">'; echo '<h2>' . $row['product_name'] . '</h2>'; echo '<p>Preis: €' . $row['product_price'] . '</p>'; echo '</div>';} ?> </section> Mein Problem ist Name Und Preis werden Geladen nur dass Bild nicht. Im Anhang lade ich ein Bild Hoch wie es später ungefähr aussehen soll. Falls jemand eine Idee hat ich bin Offen für Vorschläge. Gruß Dominik Zitieren
EdwardFangirlXxX Geschrieben 28. Dezember 2024 Geschrieben 28. Dezember 2024 Was steht denn im html was an den Browser übermittelt wird? Ich find meistens sind die Fehler am einfachsten sichtbar, indem eins einfach mal die Developertools aufmacht und guckt was da dann rauskommt. Vielleicht siehst du da schon direkt den Fehler (keinen Inhalt, falsch formatiert, etc). Zitieren
DomHa12 Geschrieben 29. Dezember 2024 Autor Geschrieben 29. Dezember 2024 vor 15 Stunden schrieb EdwardFangirlXxX: Was steht denn im html was an den Browser übermittelt wird? Ich find meistens sind die Fehler am einfachsten sichtbar, indem eins einfach mal die Developertools aufmacht und guckt was da dann rauskommt. Vielleicht siehst du da schon direkt den Fehler (keinen Inhalt, falsch formatiert, etc). Hallo Edward In der Konsole wird leider kein Fehler Angezeigt (Siehe Konsolen Screenshot) Ich habe auch schon KIs gefragt hat aber nichts Gebracht. Gruß Dominik Zitieren
EdwardFangirlXxX Geschrieben 29. Dezember 2024 Geschrieben 29. Dezember 2024 Die Links kann ich nicht sehen, die sind nicht freigegeben. Ich meinte aber gar nicht unbedingt die Konsole, sondern das html was deine php Anwendung generiert. Du solltest ja die Elemente im Browser sehen können, und dann kannst du mit den Developertools untersuchen was falsch aussieht. Also ob in dem img Tag den du generierst irgendwas komisch aussieht. Zitieren
StefanE Geschrieben 29. Dezember 2024 Geschrieben 29. Dezember 2024 vor 3 Stunden schrieb DomHa12: Hallo Edward In der Konsole wird leider kein Fehler Angezeigt (Siehe Konsolen Screenshot) Ich habe auch schon KIs gefragt hat aber nichts Gebracht. Gruß Dominik Bitte keine Links auf Google Drive, Screenshots können hier direkt hochgeladen werden. pr0gg3r reagierte darauf 1 Zitieren
Gooose Geschrieben 29. Dezember 2024 Geschrieben 29. Dezember 2024 Wenn das erst mal so ne art "Proof of Concept" ist, probiere einfach ein wenig herum. Wenn nicht ein paar Anregungen: Es gibt Situationen, wo man Binärdaten in der Datenbank hinterlegt. Diese sind aber eher selten. Speichere alternativ die Pfade zu den Dateien mit ggf. Metadaten ab. Wenn es nicht anders geht. Lege die Binärdaten in einer separaten Relation ab. (1 zu 1). Wenn das Datenbankschema mit der Zeit komplexer wird, hast du eine Bessere Kontrolle, welche Daten an den Client zurückgegeben werden. Wenn eine Abfrage keinen Index verwenden kann, wird die gesamte Relation in den Speicher geladen. Dies kann mit Relationen die Binärdaten enthalten dazu führen, dass eine Datenbank in die Knie geht. Innerhalb der UI sollte man keine DB Abfragen machen. Baue dir Klassen für den Datenzugriff. Das ist erst mal mehr Code, bietet aber eine bessere Übersichtlichkeit. Schau dir mal das Thema "Logging" an und logge ein paar mehr Informationen zur Datenabfrage mit. Schau dir die einzelnen Log-Levels (Severity) an und überlege, wie wichtig die Information ist, die du loggen möchtest. Idealerweise kannst du dann sehen, was wann und wie innerhalb deiner Anwendung passiert. Versuche "SELECT * FROM" zu vermeiden. Sollte sich die Datenstruktur mit der Zeit ändern, bekommst du den Fehler an der "richtigen" Stelle. Zudem beschreibst du mit expliziten Spaltenangaben genau, was du von der Datenbank haben möchtest. Wenn du in einem halben Jahr noch mal auf den Code schaust, kommst du wieder besser in das Thema rein. Zitieren
pr0gg3r Geschrieben 29. Dezember 2024 Geschrieben 29. Dezember 2024 Ohne den Rest vom Code zu kennen: Wenn du die Bilddatei schon als Base64 speicherst (zum Beispiel beim Upload, was Sinn machen würde), dann brauchst du im HTML base64_encode() nicht, denn dann machst du ein Base64 vom bereits erstellten Base64. Zitieren
franky515 Geschrieben 30. Dezember 2024 Geschrieben 30. Dezember 2024 Es könnte sich lohnen, eine Prüfung vor dem Aufruf von base64_encode() hinzuzufügen, um sicherzustellen, dass die Daten noch nicht kodiert sind Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.