# Excel- & Dat-Dateien mit php in txt-Dateien umwandeln



## Bombi (10. April 2003)

Morgen,

da bin ich wieder. Ich stehe vor meinem nächsten Problem:

Also die Situation ist folgende ich bekomme einmal am Tag eine Menge an dat-Dateien & eine Menge an Excel-Dateien und diese Daten sollen alle in meine MySQL-Datenbank gespeichert werden. Und genau diesen Vorgang wollte ich mittels PHP programmieren. Ist das überhaupt möglich ?

Ich dachte mir, daß ich beide Dateiformate erstmal in txt-Dateien umwandele und dann in MySql einfüge. Aber ich habe keine Ahnung, wie ich die Dateitypen mittels php ändere ?????? 

Weiss jemand mehr als ich ?????


----------



## tefla (10. April 2003)

ob dies mit php möglich ist eine excel datei auszulesen bin ich mir nicht sicher, aber mit perl und dem modul Spreadsheet::WriteExcel

http://search.cpan.org/author/JMCNA...olumn_first_col_last_col_width_format_hidden_

gehts


und bei dat dateien, kommt halt immer drauf an was drin gespeichert ist und wie, wenn text drin steht sollte dies kein problem darstellen, da du die dat's dann wie txt's behandeln kannst.

ade


----------



## ultrakollega (10. April 2003)

*CSV*

du kannst doch ne exeltabelle als CSV datei speichern,
dann mit phpmyadmin ganz einfach importieren, falls du
das zeug in ner mysql db haben willst ...


----------



## Bombi (10. April 2003)

Das soll ja automatisch passieren. Meine Daten die ich bekomme sind Messwerte und diese sollen jede Stunde aktualisiert werden. Deswegen brauche ich jetzt entweder eine php-Datei oder sonst irgendeine Datei, die ich mittels cronjob jede Stunde ausführen lasse und somit die Daten aktualisiere.

Ist es vielleicht einfacher die XLS-Datei erst in CSV zu konvertieren und danchach in txt ???


----------



## deinertsche (10. April 2003)

Wenn du die Dateien erst mal in csv "konvertiert" hast, brauchst Du sie nicht mehr in txt umzuwandeln, da csv schon klartext ist.
Die csv-Dateien kannst Du automatisch in Deine MySql-Datenbank einbinden.

Ich habe eine ini.csv in der alle Dateien inklusive Pfadangabe und Rechte (z.B. 777) aufgelistet sind.

Die csv-Datei sieht folgendermassen aus. Am Ende jeder Zeile hab ich einfach 3 ! damit sichs leichter auseinanderhalten lässt *g*

index.html;consetup/;content/;0777;!!!
articleform.php;consetup/back-end/;content/back-end/;0755;!!!

--------------------------------
$ini_file="ini.csv";
$ini_text=@implode('',file($ini_file));

//Zeilen trennen:
$zeilen=explode('!!!',$ini_text);

//einzelne Werte in den Zeilen trennen:
for ($i=0;$i<(count($zeilen)-1);$i++)
{
	$einzel_zeile=explode(';',$zeilen[$i]);
	$dateiname	=	trim($einzel_zeile[0]);
        $von		=	$path.trim($einzel_zeile[1]);
        $nach		=	$path.trim($einzel_zeile[2]);
        $rechte		=	trim($einzel_zeile[3]);
}
--------------------------------

Speicher mal eine xls-datei als csv, dann siehst Du wie das aufgebaut ist.


----------

