Hallo zusammen,
bin neu hier und hoffe, Ihr könnt mir helfen.
Also, ich verwalte einen Bereich eines Forums (WBB) und wir binden dort einmal täglich externe News per RSS ein. Die Codierung des Forums ist windows-1252, der Feed hat jedoch seit kurzem UTF-8, was zu falsch dargestellten Umlauten und Sonderzeichen führt. Da der Admin die Codierung nicht ändern will, habe ich mir überlegt, einmal täglich einen Cronjob zu starten, bei dem ein PHP-Script die DB updaten und alle Sonderzeichen bereinigen soll.
Folgende Abfrage funzt soweit auch im PHPMyAdmin, die Sonderzeichen werden bereinigt:
Das PHP-Script macht jedoch Probleme.
Beim Aufruf klappt die Datenbankverbindung und ich erhalte die echo-Ausgabe, die Zeichen sind danach aber unverändert.
Hat jemand eine Ahnung, was ich falsch mache?
Bedanke mich für Eure Hilfe!
bin neu hier und hoffe, Ihr könnt mir helfen.
Also, ich verwalte einen Bereich eines Forums (WBB) und wir binden dort einmal täglich externe News per RSS ein. Die Codierung des Forums ist windows-1252, der Feed hat jedoch seit kurzem UTF-8, was zu falsch dargestellten Umlauten und Sonderzeichen führt. Da der Admin die Codierung nicht ändern will, habe ich mir überlegt, einmal täglich einen Cronjob zu starten, bei dem ein PHP-Script die DB updaten und alle Sonderzeichen bereinigen soll.
Folgende Abfrage funzt soweit auch im PHPMyAdmin, die Sonderzeichen werden bereinigt:
Code:
UPDATE bb1_posts SET message = REPLACE ( message, 'ä', 'ä' ) ; UPDATE bb1_posts SET message = REPLACE ( message, 'Ã&', 'ü' ) ; UPDATE bb1_posts SET message = REPLACE ( message, 'üfrac14;', 'ü' ) ; UPDATE bb1_posts SET message = REPLACE ( message, 'üpara;', 'ö' ) ; UPDATE bb1_posts SET message = REPLACE ( message, 'Ä', 'Ä' ) ; UPDATE bb1_posts SET message = REPLACE ( message, 'ß', 'ß' ) ; UPDATE bb1_posts SET message = REPLACE ( message, 'ücopy;', 'é' ) ; UPDATE bb1_posts SET message = REPLACE ( message, 'Ö', 'Ö' ) ; UPDATE bb1_posts SET message = REPLACE ( message, '&', '&' ) ; UPDATE bb1_posts SET message = REPLACE ( message, 'üordm;', 'ú' )
PHP-Code:
<?php
$con = mysql_connect("localhost","webXXX","Mein DB-PW");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("usr_webXXX_1", $con);
mysql_query("UPDATE bb1_posts SET message = REPLACE (message,'üpara;','ö')");
echo "Update ok!";
mysql_close($con);
?>
Hat jemand eine Ahnung, was ich falsch mache?
Bedanke mich für Eure Hilfe!
Kommentar