Informationen über Bilder in MySQL-DB schreiben

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
tsibi
Beiträge: 269
Registriert: 31.08.2004 20:16:35
Wohnort: Oberfranken
Kontaktdaten:

Informationen über Bilder in MySQL-DB schreiben

Beitrag von tsibi » 02.05.2007 13:09:04

Hallo zusammen,

ich habe einen Ordner mit ein paar Hundert Bildern. Informationen (höhe, Breite, Dateiname, Dateigröße) sollen in eine MySQL-Tabelle eingefügt werden. Ich suche nach einer Möglichkeit, mit der ich die INSERT Anweisungen in eine Textdatei schreiben lassen kann, um diese später in die DB einzulesen.

Die Befehle file und find -printf liefern schon irgend wie die Infos - aber wie kann ich daraus oder mit einem besseren Weg die INSERT Anweisungen erstellen?

Danke im Voraus für eure Hilfe.

VG Simon

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 02.05.2007 13:21:18

Hm, ein kleines Perl-Skript könnte das erledigen und dabei gleich die Daten direkt in die DB eintragen.

tsibi
Beiträge: 269
Registriert: 31.08.2004 20:16:35
Wohnort: Oberfranken
Kontaktdaten:

Beitrag von tsibi » 02.05.2007 13:52:34

Hi nepos,

danke für deine Antwort. Perl kann ich leider nicht - nur PHP.

Der Befehl find in Verbindung mit -fprint ist ja schon gut. Da kann ich ja schon fast alles machen nur eben die Höhe und Breite des Bildes nicht einfügen. Kann man da nicht einen Weg finden, den Befehl file aufzurufen und aus dem Ergebnis Höhe und reite Brauszuholen?

Ich könnte natürlich auch ein kleines PHP-Skript in Verbindung mit scandir() und getimagesize() oder so schreiben. Dachte aber, dass das vielleicht über die Konsole geht und ich dabei auch noch was neues lernen kann.

VG Simon

nepos
Beiträge: 5238
Registriert: 05.01.2005 10:08:12

Beitrag von nepos » 02.05.2007 14:43:10

Hm, Höhe und Breite sollte sich auch mit dem Tool identify aus dem Imagemagick-Paket herausfinden lassen. Du kannst natürlich auch gerne mit PHP arbeiten, wenn du das beherrscht... mit so nem Shell-Einzeiler oder sowas wirds aber sicherlich nicht klappen.

Methusalix

Informationen über Bilder in MySQL-DB schreiben

Beitrag von Methusalix » 11.05.2007 18:36:49

Hallo tsibi,
falls Du Dich noch mit dem Thema beschäftigst; hier ein Ansatz:

Code: Alles auswählen

#!/bin/bash
datei=$1
werte=`identify $datei | awk '{print $3}'`
breite=`echo $werte| sed 's/[^0-9]/ /g' | awk '{print $1}'`
hoehe=`echo $werte | sed 's/[^0-9]/ /g' | awk '{print $2}'`
echo $breite $hoehe >> fuer_mysql.txt
Das wird dann mit scriptname grafikdatei aufgerufen und schreibt
die Werte in die Datei fuer_mysql.txt. Wenn Du das dann noch in
ein "for x in ..." reinpackst hast Du eine Textdatei, die Du in
Mysql einlesen kannst.
Gruß
Matthias

Antworten