WinFuture-Forum.de: Script Zur Umwandlung Von Zeichen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Script Zur Umwandlung Von Zeichen


#1 _Iceweasel_

  • Gruppe: Gäste

geschrieben 06. Januar 2009 - 16:21

Hallo,

ich versuche derzeit ein script zu schreiben, welches mir einen defekten datensatz in meiner datenbank repariert. es sollen verunstaltete zeichen durch korrekte ausgetauscht werden. ansich funktioniert das script, bis auf das keine zeichen ausgetauscht werden :(

hat vielleicht jemand eine idee?

<?php

# mysql connection
mysql_connect("localhost","root","") or die ("Keine Verbindung moeglich");
mysql_select_db("test") or die ("Die Datenbank existiert nicht");

# schleife
for($x=0;$x<=147;$x++)
	{
	$content_abfrage = "SELECT post_content FROM wp_posts where ID = '$x'";
	$content_ergebnis = mysql_query($content_abfrage); 
	$row = mysql_fetch_object($content_ergebnis);

	$old = array("ß","ä","Ü","ü","ö", "Ä");
	$new = array("ß","ä","Ü","ü","ö","A");

	$new_content = str_replace($old, $new, $row->post_content);

	echo $new_content;
	
	$aendern = "UPDATE wp_posts Set post_content = '$new_content' WHERE id = '$x'";
	$update = mysql_query($aendern);

					
	echo "Eintrag ".$x." ist durch <br />";
	}
?>

0

Anzeige



#2 Mitglied ist offline   Wiesel 

  • Gruppe: aktive Mitglieder
  • Beiträge: 6.004
  • Beigetreten: 09. Mai 06
  • Reputation: 525
  • Geschlecht:unbekannt
  • Wohnort:Punxsutawney, 742 Evergreen Terrace
  • Interessen:Mein Schneckenhaus

geschrieben 06. Januar 2009 - 18:11

Hallo. Schonmal versucht die Umlaute als

&umlO; als Ö usw. zu ersetzen?

greets
around the world
0

#3 _Iceweasel_

  • Gruppe: Gäste

geschrieben 06. Januar 2009 - 18:40

leider bringt das auch nichts. ich gehe davon aus, das der old array nicht genau greift ...
0

#4 Mitglied ist offline   bardelot 

  • Gruppe: aktive Mitglieder
  • Beiträge: 515
  • Beigetreten: 20. März 04
  • Reputation: 0

geschrieben 07. Januar 2009 - 17:56

Zeichenkodierung falsch gesetzt? Ich habe mal ein paar Artikel / Links herausgesucht die eventuell helfen können.

http://www.mysqlperformanceblog.com/2007/1...-mess-in-mysql/
http://www.phpwact.o...p/i18n/charsets
http://www.php.net/iconv
0

#5 Mitglied ist offline   K050V4 

  • Gruppe: aktive Mitglieder
  • Beiträge: 787
  • Beigetreten: 13. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Stuttgart
  • Interessen:(X)HTML<br />CSS2+<br />PHP 4/5<br />MySQL 5<br />Symfony 1.2+<br />JavaScript / AJAX<br />jQuery<br />C++<br />C#<br />Java<br />...

geschrieben 09. Januar 2009 - 13:06

<?php
function umlaute($das) {
	$umlaute	= array("/ä/","/ö/","/ü/","/Ä/","/Ö/","/Ü/","/ß/");
	$umlaute2   = array("/ß/","/ä/","/Ü/","/ü/","/ö/", "/Ä/");
	$ersatz	 = array("&auml;","&ouml;","&uuml;","&Auml;","&Ouml;","&Uuml;","&szlig;");
	$das_neu	= preg_replace($umlaute, $ersatz, $das);
	$das_neu	= preg_replace($umlaute2, $ersatz, $das_neu);
	return $das_neu;
}


mysql_connect("localhost","root","") or die ("Keine Verbindung moeglich");
mysql_select_db("test") or die ("Die Datenbank existiert nicht");

for($x=0;$x<=147;$x++) {
	$content_abfrage = "SELECT post_content FROM wp_posts where ID = '$x'";
	$content_ergebnis = mysql_query($content_abfrage);
	$row = mysql_fetch_object($content_ergebnis);
	$new_content = umlaute($row->post_content);
	$aendern = false;
	$aendern = mysql_query("UPDATE wp_posts Set post_content = '".$new_content."' WHERE id = '".$x."'");
	if($aendern) echo "Eintrag Nr. ".$x." Neu: <i>".$new_content."</i><br />";
	else echo "<font color=\"red\">Bei Eintrag Nr. ".$x." ist ein Fehler aufgetretten: <i>".mysql_error()."</i></font><br />";
}
?>


Bitteschön. Falls ein Fehler auftritt siehst du es in Farbe Rot.
Sollte funktionieren ist aber ungetestet.

Zitat

"In der Welt des Erkennbaren ist die Idee des Guten die höchste." - Platon

Spritify! Easy CSS-Sprite-Generator | Albanisch Deutsch Wörterbuch
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0