PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Im Shop werden nicht alle Bilder angezeigt.



KlausK
10.10.2011, 09:53
Soeben habe ich die Dateinamen meiner Bilder neu optimiert (SEO) und musste feststellen, dass das erste
Product_Image nicht angezeigt wurde. Schnell war klar, dass im Backend in der Artikelbearbeitung die
letzten Zeichen fehlten. Alle weiteren Bilder im Artikel wurden angezeigt. Diese Dateinamen waren vollständig,
obwohl sie sogar noch länger waren. :confused:

Ursache:
Die Dateinamen werden in der Datenbank gespeichert. Das erste Bild, das Hauptbild sozusagen, wird in der
Tabelle products im Feld products_image abgelegt. Die Feldlänge ist aber grundsätzlich auf 64 Zeichen
festgelegt. Alles was länger ist wird einfach abgeschnitten.

Alle anderen Bilder werden in der Tabelle products_images im Feld image_name abgelegt. Die Feldlänge ist
hier aber auf 254 Zeichen festgelegt. Warum das so ist kann ich mir im Moment noch nicht erklären.

Lösung:
Die Lösung ist also ganz einfach, indem man die Feldlänge von products_image ebenfalls auf 254 Zeichen
setzt.

- DB mit phpmyadmin öffnen
- Tabelle 'products' auswählen
- Im Menue den Reiter 'Struktur' auswählen
- Feld 'products_image' bearbeiten
- Feldlänge auf '254' setzen

Sollte jemand mal einen plausiblen Grund haben diese Feldlänge nicht zu ändern, dann her damit!

jay-ar
10.10.2011, 13:56
Das ist halt eine blöde Eigenart von MySQL.
Oracle DB, PostgreSQL, und sogar der MSSQLServer quittieren das nämlich schon während des Einfügens mit einem Fehler und schneiden nicht ab.
Im Allgemeinen verwendet man für die Feldlänge eine Potenz zur Basis 2 bzw. Basis 4. (also "2 hoch x" oder "4 hoch x"). Das hat was mit der internernen Struktur von Datenbanken und Dateisystemen zu tun. Bei der heutigen Servergröße bzw. Serverleistung ist das aber eigentlich fast egal, was man für Online Shops nimmt.

jay-ar