Mailinglisten-Archive |
Am 16.01.2006 01:03 erhielt ich diese mail von Norbert Pfeiffer: hallo Norbert. > was steht denn dann in der Feile. $newfile_ ="öüäabc"; $fp = fopen ($path."0.$filetype","w"); fputs ($fp,$newfile); fclose ($fp); Kommt tatsächlich so in der 0.txt an.. Ich beziehe die Daten von einem längeren script, welches die db ausliest. Wenn ich den output per echo $newfile = export_database("usr_web1_1"); auf den Browser kippe sieht man u.a. INSERT INTO test ( id, text ) VALUES ( 1, "öööüüävfgdfgdf" ); INSERT INTO test ( id, text ) VALUES ( 2, "gfgdfgdfßßßßääöö" ); Wenn ich dann $newfile in die Datei schreiben will, keine Umlaute mehr Hoffe wird jetzt klarer wo mein Problem liegt. Gruß Werner ich hänge die function mal an.. --------------- function export_database($db, $tables_input = false, $break = "\n") { // MySQL Datenbank auswhlen mysql_select_db($db) OR die("Fehler beim Auswhlen der Datenbank: ".mysql_error()); // Parameter fr Zeilenumbruch kontrollieren, wenn ungltig auf \n setzen $break = ($break == "\n" OR $break == "\r\n" OR $break == "\r") ? $break : "\n"; // Ausgabestring für den Datenbank Dump initialisieren mit einer ersten Kommentarzeile $exportstring = "-- --$break"; // Array fr alle zu exportierenden Tabellen initialisieren // Jeder Wert in diesem Array wird spter als Tabellennamen aufgefasst und es wird // versucht einen MySQL DUMP dieser Tabelle zu erstellen $tables = array(); // Wenn fr $tables_input ein Array bergeben wurde die Kopfzeile fr einen indivi- // duellen Datenbankexport erzeugen und alle Eintrge aus dem Array in das Tabellen- // array kopieren, sodass nur die im Array bergebenen Tabellen exportiert werden if(is_array($tables_input)) { $tables = $tables_input; $exportstring .= "-- INDIVIDUAL DATABASE EXPORT --$break"; } // Ansonsten, wenn $tables_input ein einfacher String ist, diesen als eine Tabelle // auffassen und nur diese eine Tabelle exportieren, als Single Database Export elseif(!is_array($tables_input) AND $tables_input) { $tables[0] = $tables_input; $exportstring .= "-- SINGLE DATABASE EXPORT --$break"; } // Wurde der Parameter $tables_input gar nicht mit bergeben oder ist dieser False, so // wird per get_tables() herausgefunden welche Tabellen alle existieren und es werden // alle Tabellen exportiert => Full Database Export else { $tables = get_tables($db); $exportstring .= "-- FULL DATABASE EXPORT --$break"; } // In den Ausgabestring die Kopfzeilen schreiben, welche den Namen der Datenbank in // der die Tabellen liegen, das Datum zu dem der Dump erzeugt wurde sowie den Typ des // Exports (s.o.) enthlt $exportstring .= "-- -----------------------------------$break"; $exportstring .= "-- Database: ".$db.str_repeat(" ",23 - strlen($db))."--$break"; $exportstring .= "-- Build: ".date("d.m.Y, H:i")." --$break"; $exportstring .= "-- -----------------------------------$break$break"; // Gehe alle Tabellen in $tables durch und exportiere nacheinander von jeder Tabelle // die Struktur, sowie die Daten. foreach($tables as $table) { $exportstring .= "-- Table: $table$break"; $exportstring .= "-- -----------------------------------$break"; $exportstring .= export_table_structure($db, $table, true, $break); $exportstring .= export_table_data($db, $table, false, $break); $exportstring .= "$break"; } // Füge dem Exportstring noch ein Ende Kennzeichen hinzu... $exportstring .= "-- -----------------------------------$break"; $exportstring .= "-- Export End --$break"; $exportstring .= "-- -----------------------------------$break"; // ...und liefere den kompletten String zurck. return $exportstring; } -- WebAgentur | Werner Laude Lindenburger Allee 22 | 50931 Köln fon 0221.8805 635 fax auf Anfrage ------------------------------------------ http://www.laude.biz
php::bar PHP Wiki - Listenarchive