Jörg: preg_replace bei sehr großen Strings

Beitrag lesen

Hallo Rolf,

die (u.a.) den Data-URL-String des Uploads und das Uploaddatum enthält.

Oha, das ist fett. Da reicht ggf. schon ein Hash.

Hab ich auch schon dran gedacht.

Aber wie sieht es denn mit der nachträglichen Bearbeitung aus? Kann jemand einen solchen Datenklops nachträglich bearbeiten? Wenn ja, kann ja aller möglicher Unfug in die data-URL eingetragen werden, das ist durchaus riskant.

Nicht wirklich. Der User kann nicht zwischen Editor und BBcode umschalten. Er kann natürlich theoretisch allerlei Blödsinn an das Script senden, aber nicht über den Editor selber.

Wenn keine Nachbearbeitung möglich ist, könntest Du auch mit modifizierten data-URLs arbeiten. Du musst die Bilder für die HTML Anzeige ohnehin aufbereiten, d.h. du könntest die Uploads als data:image/jpeg+upload;base64,hexhex speichern, und das +upload für die HTML Anzeige rausschmeißen. Das ist ein einfacher str_replace (wenn es nur jpeg ist) und ein nur unwesentlich komplizierterer preg_replace, wenn mehr als ein Image-Typ möglich ist.

Daran hatte ich hzuerst gedacht. Dann aber ist das Image im Editor nicht sichtbar, weil ich dort nicht genau weiß, wo ich austauschen muss.

Die Frage, warum Du überhaupt mit data-URLs arbeiten willst statt die Bilddatei auf Platte zu legen, stelle ich mir auch noch. Wenn Du vermeiden willst, unbenutzte Bilddateien finden und entsorgen zu müssen, ok, aber das Problem hast Du durch die zusätzliche Tabelle in der DB jetzt auch.

Gute Frage, denn mir selber gefällt der Data-Url.Code auch nicht. Aber wenn aus der Anwendung heraus eine Mail versendet wird, wird die Data-Url sofort in ein Image gewandelt, während die meisten Email-Clients externe Images erstmal blockieren. 😕

Jörg