kostenloser Webspace werbefrei: lima-city


Sonderzeichen mit AJAX (Zeichenkodierung)

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    partycheck-berlin

    partycheck-berlin hat kostenlosen Webspace.

    Ich habe ein tag/problem">Problem:

    Ich tausche via AJAX in einem div meinen Inhalt aus. Im Moment ist es lediglich Schrift. Mein Problem ist, dass die String, welche aus meiner php Datei kommen keine Sonderzeichen darstellen können ( ö,ü usw.) sondern stattdessen irgendwelche komischen errorzeichen ausgeben. Wär super wenn jemand ne Idee hat.

    mfG
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. m********e

    Ö =>
    Ö

    ö =>
    ö

    Ä =>
    Ä

    ä =>
    ä

    Ü =>
    Ü

    ü =>
    ü

    EInfach ersetzen :)
  4. t****o

    Wenns aus ner PHP gelesen wird, geht das leichter:
    $deinevariable = htmlentities($deinevariable);
    echo $deinevariable;
  5. Autor dieses Themas

    partycheck-berlin

    partycheck-berlin hat kostenlosen Webspace.

    else if ($_REQUEST['inhalt'] == home) {
    echo "Hier steht Inhalt";
    }

    wo müsste hier "htmlentities" rein?
  6. c****s

    partycheck-berlin schrieb:
    Ich habe ein Problem:

    Ich tausche via AJAX in einem div meinen Inhalt aus. Im Moment ist es lediglich Schrift. Mein Problem ist, dass die String, welche aus meiner php Datei kommen keine Sonderzeichen darstellen können ( ö,ü usw.) sondern stattdessen irgendwelche komischen errorzeichen ausgeben. Wär super wenn jemand ne Idee hat.

    mfG

    Das ist 100% ein Problem mit dem Encoding. Ist auf deiner Seite explizit ein Character Encoding angegeben? Sind die Seiten, die du über ajax anziehst auch im selben Encoding?
    Ich würde dir empfehlen, alles in UTF-8 zu kodieren und die Dateien ohne BOM abzulegen. So kann nichts schiefgehen und UTF-8 hat in ein paar Jahren wahrscheinlich eh alle ISO-Encodings abgelöst.
  7. partycheck-berlin schrieb:
    else if ($_REQUEST['inhalt'] == home) {
    echo "Hier steht Inhalt";
    }

    wo müsste hier "htmlentities" rein?


    else if ($_REQUEST['inhalt'] == home) {
    		echo(htmlentities("Hier steht Inhalt"));
    }


    LG cookies

    Beitrag zuletzt geändert: 28.10.2009 21:46:50 von cookies
  8. Autor dieses Themas

    partycheck-berlin

    partycheck-berlin hat kostenlosen Webspace.

    So, ich seh schon ich muss da anders ran^^. Für deine Idee census reicht mein Wissen leider nicht. Cookies danke, aber jetzt hab ich das problem dass ich keine html tags mehr schrieben kann^^. Ich werde ma schaun ob ich das ganze nicht einfach mit ner txt datei machen kann. Vielen Dank nochmal


    mfG

    p.s.: So ich habe das ganze nun mit verschiedenen txt Dateien gemacht, welches für meine Zwecke vollkommen ausreicht da sich meine Inhalten (noch) nicht verändern sollen durch irgendwelche variablen usw. NUR ich habe wieder Sonderzeichen Error^^. Wie würden denn die Ideee mit UTF-8 funktionieren? BZW. ...nein ->character encoding<- was ist das ?

    p.s.again -.-: charset=utf-8 steht halt im html in der meta info ansonsten wüsste ich nicht was du meinst

    Beitrag zuletzt geändert: 28.10.2009 22:39:44 von partycheck-berlin
  9. c****s

    partycheck-berlin schrieb:
    p.s.again -.-: charset=utf-8 steht halt im html in der meta info ansonsten wüsste ich nicht was du meinst


    Gut. Damit sagst du dem Browser "die Zeichen sind UTF-8 kodiert". Wenn du allerdings deine Seite z.B. als ANSI gespeichert hast, dann werden logischerweise die Sonderzeichen falsch dargestellt. Bei fast allen Editoren (und bei notepad++ auf jedem Fall), kann man bei Textdateien auswählen, in welcher Kodierung sie gespeichert werden sollen. Die richtige Kodierung für dich wäre UTF-8 ohne BOM (Byte ORder Mark). Da du anscheinend unter Windows arbeitest, sind aber wahrscheinlich deine Dateien ISO-Windows kodiert.

    Lad dir mal notepad++ runter und speichere alle Textdateien (html, php, js, etc) als UTF-8 ohne BOM ab.
  10. Autor dieses Themas

    partycheck-berlin

    partycheck-berlin hat kostenlosen Webspace.

    Super vielen vielen Dank :D ich habe die Dateien nun konvertiert und alles funktioniert wunderbar. :) eine Frage hätte ich dann aber doch noch: Wie kann ich einen String ausgeben welcher auch klammern und anführungszeichen besitzt? Oder sollte ich dann doch lieber auf eine txt Datei umsteigen?
  11. c****s

    partycheck-berlin schrieb:
    Super vielen vielen Dank :D ich habe die Dateien nun konvertiert und alles funktioniert wunderbar. :) eine Frage hätte ich dann aber doch noch: Wie kann ich einen String ausgeben welcher auch klammern und anführungszeichen besitzt? Oder sollte ich dann doch lieber auf eine txt Datei umsteigen?


    Klammern innerhalb eines php-Strings machen keine Probleme. Anführungszeichen musst du bei Strings, die mit Anführungszeichen limitiert werden, escapen, also ein Backslash voranstellen.
    $str = "Das ist ein \"String\" mit Anführungszeichen.";


    Wenn du im HTML hingegen zum Beispiel spitze Klammern ausgeben musst, musst du auch named entities zurückgreifen:
    <span>Der Tag &lt;div&gt; öffnet einen Div.</span>
  12. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!