Bildnamen und -kopien mit PHP dynamisch erzeugen
Markus
- php
Hallo!
Folgende Frage hätte ich, vielleicht weiß ja jemand ob und wie das möglich ist:
Im Mitgliedsbereich einer Webseite möchte ich die Dateinamen der Bilder in einer Bildergalerie (die auch mit PHP läuft und verschiedene Verzeichnisse des Servers einläd und die Thumnails dynamisch erzeugt) "on-the-fly" ändern.
Sinn und Zweck: Wenn sich jemand mit Mitgliedszugang einloggt, öffnet er eine Session und trägt alle Daten der Datenbank (u.a. seine Usernummer) mit sich herum. Diese Usernummer möchte ich nun an den jeweiligen Bildnamen der Bildergalerie anfügen. So würde sich bei Bildern, die irgendwo illegal auftauchen oder veröffentlicht werden genau feststellen lassen, von welchem Mitglied diese stammen - sofern der Dateinamen nicht geändert wird. ;-)
Hierfür müßte ich die jeweils vom User aufgerufenen Bilder um die Usernummer ergänzen und in einen temporären Ordner kopieren, oder?!
Vielen Dank im vorraus!!
Markus
Hallo Markus,
mal ganz ehrlich: Glaubst Du, daß sich Deine User die Hose mit der Kneifzange anziehen? Der Dateiname ist wirklich einer der unsichersten Methoden "Bilderklau" nachzuvollziehen - insbesondere dann, wenn Du davon ausgehen darfst, daß sich die Besucher nicht nur für das Login ihren Log-Namen merken, sondern beim Speichern anhand des automatisch angebotenen Dateinamen den Braten richen werden...
Du wirst Dich also einer anderen Methode bedienen müssen.
Bilddatein haben die Möglichkeit Zusatzinformationen in Form von EXIF-Headern aufzunehmen. Dieser werden nur dann überschrieben, wenn das Bild bearbeitet wird. Für Linux gibt es ein recht nettes Perl-Script unter http://www.sno.phy.queensu.ca/~phil/exiftool/ was entweder direkt vom Webserver ausgeführt werden kann, oder als Komantozeilenprogramm arbeitet.
Eine weitere Möglichkeit sind "Wasserzeichen". Hierbei wird der name direkt auf das Bild geschrieben. Ein recht bekanntes Beispiel ist das Kameraicon auf jedem Ebay-Image. Per Kommandozeile ist hier http://www.cit.gu.edu.au/~anthony/graphics/imagick6/annotating/#watermarking als HowTo zu empfehlen. Dieses ist ein sichtbares Wasserzeichen.
Darüber hinaus gibt es auch digitale Wasserzeichen, die sich der Steganographie bedienen. Neben http://www.nic.funet.fi/pub/crypt/steganography/ sei insbesondere auf http://www.outguess.org/ hingewiesen.
Generell gibt es also Möglichkeiten, die Besser als das einfache Ändern eines Dateinamen sind. Aber sie werden den Server schnell zum schwitzen bringen, wenn das on-the-fly vor sich gehen muß.
Gruß aus Berlin!
eddi
Hallo.
Sinn und Zweck: Wenn sich jemand mit Mitgliedszugang einloggt, öffnet er eine Session und trägt alle Daten der Datenbank (u.a. seine Usernummer) mit sich herum. Diese Usernummer möchte ich nun an den jeweiligen Bildnamen der Bildergalerie anfügen. So würde sich bei Bildern, die irgendwo illegal auftauchen oder veröffentlicht werden genau feststellen lassen, von welchem Mitglied diese stammen - sofern der Dateinamen nicht geändert wird. ;-)
Du hast einen Nutzer, du hast eine Session, du hast eine Bilddatei und du hast eine Datenbank? Weshalb legst du dann nicht die Sessiondaten im Fall eines Uploads zur Beweissicherung unter dem Nutzernamen in der Datenbank ab?
MfG, at