Nochmal: Was passiert, wenn du den Browser zwingst UTF-8 zu verwenden? Wird es dann richtig dargestellt?
str_replace-Problem
Einklappen
X
-
Zitat von h3ll Beitrag anzeigenNochmal: Was passiert, wenn du den Browser zwingst UTF-8 zu verwenden? Wird es dann richtig dargestellt?
Kommentar
-
Also, ich hatte ja die Testdateien im Editor vor dem Speichern zu UTF-8 konvertiert. Wenn ich die jetzt aber in meinem uralten Weberslave öffne, der das noch nicht richtig versteht, dann erhalte ich diese Reihenfolge:
HTML-Code:// Ausgabe: ‘Door’ // Ausgabe: ‘Door’ // Ausgabe: ?Door?
Kommentar
-
Zitat von Melewo Beitrag anzeigenDie erste Zeile sollte somit die Zeichen enthalten, nach denen Du suchen müsstest, um diese beiden zu bereinigen.
Das wäre etwa so, als hättest du einen Taschenrechner, der bei 2+2 eine 5 als Ergebnis liefert. Jetzt könnte man natürlich hergehen und den Fehler "korrigieren", indem man 5 durch 4 ersetzt. "Funktioniert" auch im ersten Anschein nach einwandfrei. Bis jemand auf die Idee kommt 2+3 zu rechnen und plötzlich 4 als Ergebnis bekommt.
Also nicht das Ergebnis der Verarbeitung korrigieren, sondern die eigentliche Verarbeitung! Das gilt auch bei Zeichensätzen.Zuletzt geändert von h3ll; 11.01.2013, 22:27.
Kommentar
-
Zitat von h3ll Beitrag anzeigenEr muss nix bereinigen. Wenn er jetzt anfängt einzelne Zeichen zu ersetzen, ist das ein schmutziger Workaround, der vielleicht in 90% der Fälle funktioniert, aber es behebt das eigentliche Problem nicht.
Hier ist noch eine passende Glyphen-Liste, nur ist die nicht komplett. Um den Buchstaben zu erhalten, müsste nach dem zweiten Buchstaben oder Glyphe (nennt man das so?) gesucht werden.
http://bueltge.de/wp-content/downloa...odierungen.pdfZuletzt geändert von Melewo; 11.01.2013, 22:42.
Kommentar
-
Zitat von Melewo Beitrag anzeigenHier ist noch eine passende Glyphen-Liste, nur ist die nicht komplett. Um den Buchstaben zu erhalten, müsste nach dem zweiten Buchstaben oder Glyphe (nennt man das so?) gesucht werden.
http://bueltge.de/wp-content/downloa...odierungen.pdf
Dein Satz müsste also richtig lauten: „Um die Glyphe zu erhalten, müsste nach dem zweiten (und ggf. dritten und vierten) Byte gesucht und eventuelle Kombinationsmarker berücksichtigt werden.“
Deswegen sollte man sich an das halten, was h3ll die ganze Zeit schon predigt.[COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
[/COLOR]
Kommentar
-
Zitat von AmicaNoctis Beitrag anzeigenund verleitet dazu, alles nur noch schlimmer zu machen.
PHP-Code:<?php ini_set("user_agent", "Mozilla/5.0 ..."); ?>
<!DOCTYPE html>
<html>
<head>
<title>Thema</title>
<meta charset="utf-8">
</head>
<body>
<?php
$String = file_get_contents("http://www. ... .com/door-mystery-erupts-...");
echo htmlspecialchars($String, ENT_QUOTES);
// <title> POLITICS - ‘Door’ mystery ...
?>
</body>
</html>PHP-Code:<?php ini_set("user_agent", "Mozilla/5.0 ..."); ?>
<!DOCTYPE html>
<html>
<head>
<title>Thema</title>
<meta charset="windows-1252">
</head>
<body>
<?php
$String = file_get_contents("http://www. ... .com/door-mystery-erupts-...");
echo htmlspecialchars($String, ENT_QUOTES);
// <title> POLITICS - ‘Door’ mystery ...
?>
</body>
</html>
@ newbie1955 - Mit der rechtlichen Seite und mit dem neuen Leistungsschutzgesetz kennst Du Dich hoffentlich aus? Dass seit Jahren keine Seite mehr in den Serps rankt, die nur zu 100% aus übernommenen Pressemitteilungen oder sonstigen Duplicate Content besteht, weißt Du? Die Fehler im Quelltext würde ich bereinigen und X-UA-Compatible würde ich entfernen, da nur als Notbehelf geeignet. Die Ladezeit von der Seite ist zu lang.[FONT="][/FONT]Zuletzt geändert von Melewo; 12.01.2013, 10:37.
Kommentar
-
Zeichensatz beachten
Hallo, nett dass Ihr mir helfen wollt, aber ich habe das newbie in meinem Namen nicht ohne Grund gewählt, also versucht bitte, wenn möglich, verständlich zu bleiben.
@AmicaNoctis und h3llMan hätte auch einfach nur den Zeichensatz beachten können. Aber hey, wozu einfach, wenns auch umständlich geht...
@Melewo. Ja, die rechtliche Seite wird beachtet. Diese Seite soll - wenn sie je funktioniert - sowieso vor allem intern verwendet werden und wird ggf mit htaccess geschützt.Zuletzt geändert von newbie1955; 12.01.2013, 16:23.
Kommentar
-
Zitat von newbie1955 Beitrag anzeigenLeider weiß ich nicht, was Ihr damit meint. Inwieweit beachten, wodurch ?
RegEx: Mit regulären Ausdrücken im Quellcode von Dateien suchen
Hat jetzt nicht unbedingt etwas mit dem Thema zu tun, doch zum Beispiel verstehe ich nicht, zu was dieser Refresh gut sein soll. Wenn Du da schon aus einem mir unerklärlichen Grund einen verwendest, zwischen http: und Domain kommen immer noch zwei Schrägstriche:
HTML-Code:<meta http-equiv="refresh" content="600; URL=http:www.nachrichtentisch.de/austest.php">
Daraus lässt sich 0 machen, da es sich ohnehin oft nur um Wiederholungen handelt, wie fehlende Anführungszeichen:
Result: 460 Fehler / 37 Warnungen
Kommentar
-
Zitat von h3ll Beitrag anzeigenHast du jetzt das htmlentities() schon raus gegeben?
türkischen Sonderzeichen, die im aktuellen Text gerade vorkämen.
War es denn das, was Du meintest mit "einfach nur den Zeichensatz beachten"???
Kommentar
-
Zitat von newbie1955 Beitrag anzeigenja. Momentan sehe ich auch nix Störendes, aber auch keine spezifischen
türkischen Sonderzeichen, die im aktuellen Text gerade vorkämen.
War es denn das, was Du meintest mit "einfach nur den Zeichensatz beachten"???
Allerdings solltest du immer htmlspecialchars() anwenden, wenn du auf deiner HTML-Seite Werte ausgeben möchtest, da hiermit HTML-Steuerzeichen entschärft werden. Einziger Ausnahmefall: Du möchtest bewusst HTML-Code ausgeben.
Kommentar
-
@Melewo
Für meine Arbeit sollte sich die Meldungsübersicht in kürzeren Zeiträumen aktualisieren, also spätestens alle fünf Minuten. Das mit dem doppelten Slash ist natürlich ein Fehler, den hatte ich jetzt schon wieder entfernt.
Woher kommen die vielen Fehler bei Dir? Bei mir kommen:
Code:Result: 4 Errors, 2 warning(s)
Code:[LIST=1][*] [IMG]http://validator.w3.org/images/info_icons/error.png[/IMG] [I]Line [URL="http://validator.w3.org/check#line-7"]7[/URL], Column 97[/I]: Bad value [URL]http://www.w3.org/2000/xhtml[/URL] for the attribute xmlns (only [URL="http://www.w3.org/1999/xhtml"]XHTML namespace[/URL] permitted here). …l lang="de" class="no-js" xmlns="http://www.w3.org/2000/xhtml"[B]>[/B]<!--<![endif]--> [URL="http://validator.w3.org/feedback.html?uri=;errmsg_id=html5#errormsg"]✉[/URL][*] [IMG]http://validator.w3.org/images/info_icons/warning.png[/IMG] [I]Line [URL="http://validator.w3.org/check#line-7"]7[/URL], Column 97[/I]: Attribute xmlns is not serializable as XML 1.0. …l lang="de" class="no-js" xmlns="http://www.w3.org/2000/xhtml"[B]>[/B]<!--<![endif]--> [URL="http://validator.w3.org/feedback.html?uri=;errmsg_id=html5#errormsg"]✉[/URL][*] [IMG]http://validator.w3.org/images/info_icons/error.png[/IMG] [I]Line [URL="http://validator.w3.org/check#line-12"]12[/URL], Column 53[/I]: Bad value X-UA-Compatible for attribute http-equiv on element meta. <meta http-equiv="X-UA-Compatible" content="IE=8" /[B]>[/B] [URL="http://validator.w3.org/feedback.html?uri=;errmsg_id=html5#errormsg"]✉[/URL][*] [IMG]http://validator.w3.org/images/info_icons/error.png[/IMG] [I]Line [URL="http://validator.w3.org/check#line-17"]17[/URL], Column 68[/I]: Changing character encoding utf-8 and reparsing. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/[B]>[/B] [URL="http://validator.w3.org/feedback.html?uri=;errmsg_id=html5#errormsg"]✉[/URL][*] [IMG]http://validator.w3.org/images/info_icons/error.png[/IMG] [I]Line [URL="http://validator.w3.org/check#line-17"]17[/URL], Column 68[/I]: Changing encoding at this point would need non-streamable behavior. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/[B]>[/B] [URL="http://validator.w3.org/feedback.html?uri=;errmsg_id=html5#errormsg"]✉[/URL][/LIST]
Wenn ich X-UA-Compatible entferne, kriege ich hier mit der IE-Darstellung Probleme. Wir haben hier auf der Arbeit noch grottig alte IEs im Einsatz, da zerschießt es mir die Navi-Leiste.
Gruß und Dank
newbie1955Zuletzt geändert von newbie1955; 12.01.2013, 18:41.
Kommentar
Kommentar