Wenn der Topf aber nun ein Loch hat - was dann?
bearbeitet von Jörg ReinholzMoin!
> > Du fügst die doch sowieso mit PHP zusammen.
> Nein, ich hole *.htm Dateien mit Javascript per Ajax
Linuchs trällert _"Wenn der Topf aber nun ein Loch hat..."_
Was (zum Teufel!) hindert Dich die Dateien mit php möglichst schon beim Upload durch iconv zu jagen und UTF-8-kodiert abzulegen? Das hier erledigt das für alle Dateien im aktuellen Verzeichnis, die auf .htm enden (blind geschrieben, ungetestet, ohne abgefangene Fehler, nur ein Vorschlag):
~~~php
$dataDir='.';
# Reihenfolge ist wichtig
# eventuell erweitern...
$spek=array('ASCII', 'UTF-16', 'UTF-8', 'ISO-8859-15', 'ISO-8859-1');
$d = dir($dataDir);
while (false !== ($entry = $d->read())) {
if (
$entry != '..'
&& $entry != '.'
&& substr( $entry, 0, 3 ) != '.ht';
&& substr( $entry, -4, 4 ) != '.htm';
&& file_exists("$dataDir/$entry")
&& is_readable("$dataDir/$entry")
&& is_writable("$dataDir/$entry")
) {
$string = file_get_contents($dataDir/$entry);
$coding = mb_detect_encoding($string, $spek, false);
if ( 'UTF-8' != $coding && 'ASCII' != $coding ) {
$string = mb_convert_encoding($string, 'UTF-8', $coding);
file_put_contents($dataDir/$entry, $string);
}
}
}
$d->close();
~~~
Jörg Reinholz
Wenn der Topf aber nun ein Loch hat - was dann?
bearbeitet von Jörg ReinholzMoin!
> > Du fügst die doch sowieso mit PHP zusammen.
> Nein, ich hole *.htm Dateien mit Javascript per Ajax
Linuchs trällert _"Wenn der Topf aber nun ein Loch hat..."_
Was (zum Teufel!) hindert Dich die Dateien mit php möglichst schon beim Upload durch iconv zu jagen und UTF-8-kodiert abzulegen? Das hier erledigt das für alle Dateien im aktuellen Verzeichnis, die auf .htm enden (blind geschrieben, ungetestet, ohne abgefangene Fehler, nur ein Vorschlag):
~~~php
$dataDir='./';
# Reihenfolge ist wichtig
# eventuell erweitern...
$spek=array('ASCII', 'UTF-16', 'UTF-8', 'ISO-8859-15', 'ISO-8859-1');
$d = dir($dataDir);
while (false !== ($entry = $d->read())) {
if (
$entry != '..'
&& $entry != '.'
&& substr( $entry, 0, 3 ) != '.ht';
&& substr( $entry, -4, 4 ) != '.htm';
&& file_exists("$dataDir\\$entry")
&& is_readable("$dataDir\\$entry")
&& is_writable("$dataDir\\$entry")
) {
$string = file_get_contents($entry);
$coding = mb_detect_encoding($string, $spek, false);
if ( 'UTF-8' != $coding && 'ASCII' != $coding ) {
$string = mb_convert_encoding($string, 'UTF-8', $coding);
file_put_contents($entry, $string);
}
}
}
$d->close();
~~~
Jörg Reinholz
Wenn der Topf aber nun ein Loch hat - was dann?
bearbeitet von Jörg ReinholzMoin!
> > Du fügst die doch sowieso mit PHP zusammen.
> Nein, ich hole *.htm Dateien mit Javascript per Ajax
Linuchs trällert _"Wenn der Topf aber nun ein Loch hat..."_
Was (zum Teufel!) hindert Dich die Dateien mit php möglichst schon beim Upload durch iconv zu jagen und UTF-8-kodiert abzulegen? Das hier erledigt das für alle Dateien im aktuellen Verzeichnis, die auf .htm enden (blind geschrieben, ungetestet, ohne abgefangene Fehler, nur ein Vorschlag):
~~~php
$dataDir='./';
# Reihenfolge ist wichtig
# eventuell erweitern...
$spek=array('ASCII', 'UTF-16', 'UTF-8', 'ISO-8859-15', 'ISO-8859-1');
$d = dir($dataDir);
while (false !== ($entry = $d->read())) {
if (
$entry != '..'
&& $entry != '.'
&& substr( $entry, 0, 3 ) != '.ht';
&& substr( $entry, -4, 4 ) != '.htm';
&& file_exists("$dataDir\\$entry")
&& is_readable("$dataDir\\$entry")
&& is_writable("$dataDir\\$entry")
) {
$string = file_get_contents($entry);
$coding = mb_detect_encoding($string, $spek, false);
if ( 'UTF-8' != $coding && 'ASCII' != $coding ) {
$string = "mb_convert_encoding($string, 'UTF-8', $coding);
file_put_contents($entry, $string);
}
}
}
$d->close();
~~~
Jörg Reinholz
Wenn der Topf aber nun ein Loch hat - was dann?
bearbeitet von Jörg ReinholzMoin!
> > Du fügst die doch sowieso mit PHP zusammen.
> Nein, ich hole *.htm Dateien mit Javascript per Ajax
Linuchs trällert _"Wenn der Topf aber nun ein Loch hat..."_
Was (zum Teufel!) hindert Dich die Dateien mit php möglichst schon beim Upload durch iconv zu jagen und UTF-8-kodiert abzulegen? Das hier erledigt das für alle Dateien im aktuellen Verzeichnis, die auf .htm enden (blind geschrieben, ungetestet, ohne abgefangene Fehler, nur ein Vorschlag):
~~~
$dataDir='./';
# Reihenfolge ist wichtig
# eventuell erweitern...
$spek=array('ASCII', 'UTF-16', 'UTF-8', 'ISO-8859-15', 'ISO-8859-1');
$d = dir($dataDir);
while (false !== ($entry = $d->read())) {
if (
$entry != '..'
&& $entry != '.'
&& substr( $entry, 0, 3 ) != '.ht';
&& substr( $entry, -4, 4 ) != '.htm';
&& file_exists("$dataDir\\$entry")
&& is_readable("$dataDir\\$entry")
&& is_writable("$dataDir\\$entry")
) {
$string = file_get_contents($entry);
$coding = mb_detect_encoding($string, $spek, false);
if ( 'UTF-8' != $coding && 'ASCII' != $coding ) {
$string = "mb_convert_encoding($string, 'UTF-8', $coding);
file_put_contents($entry, $string);
}
}
}
$d->close();
~~~
örg Reinholz
Wenn der Topf aber nun ein Loch hat - was dann?
bearbeitet von Jörg ReinholzMoin!
> > Du fügst die doch sowieso mit PHP zusammen.
> Nein, ich hole *.htm Dateien mit Javascript per Ajax
Linuchs trällert _"Wenn der Top aber nun ein Loch hat..."_
Was (zum Teufel!) hindert Dich die Dateien mit php möglichst schon beim Upload durch iconv zu jagen und UTF-8-kodiert abzulegen? Das hier erledigt das für alle Dateien im aktuellen Verzeichnis, die auf .htm enden (blind geschrieben, ungetestet, ohne abgefangene Fehler, nur ein Vorschlag):
~~~
$dataDir='./';
# Reihenfolge ist wichtig
# eventuell erweitern...
$spek=array('ASCII', 'UTF-16', 'UTF-8', 'ISO-8859-15', 'ISO-8859-1');
$d = dir($dataDir);
while (false !== ($entry = $d->read())) {
if (
$entry != '..'
&& $entry != '.'
&& substr( $entry, 0, 3 ) != '.ht';
&& substr( $entry, -4, 4 ) != '.htm';
&& file_exists("$dataDir\\$entry")
&& is_readable("$dataDir\\$entry")
&& is_writable("$dataDir\\$entry")
) {
$string = file_get_contents($entry);
$coding = mb_detect_encoding($string, $spek, false);
if ( 'UTF-8' != $coding && 'ASCII' != $coding ) {
$string = "mb_convert_encoding($string, 'UTF-8', $coding);
file_put_contents($entry, $string);
}
}
}
$d->close();
~~~
örg Reinholz