Ankündigung

Einklappen
Keine Ankündigung bisher.

Formular Umlaute

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • flflfl
    hat ein Thema erstellt Formular Umlaute.

    Formular Umlaute

    Hallo,

    ich habe auf meiner Homepage ein Formular, dass mit jquery und ajax versendet wird. (Alles kein Problem).

    Mein einziges Problem sind die "HTML-Sonderzeichen":
    Ich decodiere die Daten vor dem Senden im Javascript mit
    Code:
    encodeURIComponent
    und encodiere die Daten im PHP-Teil mit
    Code:
    html_entity_decode
    . Mit diesen 2 Funktionen kommt jedoch nur mehr Schrott heraus.

    Mit welchen Funktionen könnte das denn funktionieren?

    Danke Flo

  • flflfl
    antwortet
    Hallo,

    alles auf utf-8 umzustellen geht leider nicht, da es ein größeres shopsystem ist.

    ich habe mir jetzt mit utf8_decode() geholfen.

    Einen Kommentar schreiben:


  • lstegelitz
    antwortet
    Zitat von flflfl Beitrag anzeigen
    Zusammenfassung: Form->JS macht encodeURIComponent -> POST -> PHP -> HTML-Mail daten kommen falsch an.

    Aus üöä wird ÌÀö
    Deutliches Encoding Problem, du verwendest nicht konsequent EIN Encoding, daher entsteht irgendwo der Salat (da auch nicht umkodiert wird). Kontrolliere mit welchen Encodings die beteiligten Dateien gespeichert sind. Falls möglich stell ALLES auf UTF-8 um, dann erledigt sich dein Problem von ganz alleine. Benutz auch die Boardsuche zu diesem Thema, das wurde bereits mehrfach ausreichend behandelt...

    Einen Kommentar schreiben:


  • mimomamu
    antwortet
    Ich tippe eher auf google -> rfc2045

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    google -> zeichensatz

    Einen Kommentar schreiben:


  • flflfl
    antwortet
    sorry

    Kann mir sonst jemand helfen?

    Danke

    Einen Kommentar schreiben:


  • mimomamu
    antwortet
    Zitat von flflfl Beitrag anzeigen
    Ich habe im jquery ajax ...
    Du hättest du erwähnen müssen, dass du jQuery verwendest. Ich bin davon ausgegangen, dass du selbst ein XMLHttpRequest erzeugst,

    Zitat von flflfl Beitrag anzeigen
    Zusammenfassung: Form->JS macht encodeURIComponent -> POST -> PHP -> HTML-Mail daten kommen falsch an.
    Du hättest erwähnen müssen, dass du eine E-Mail generierst und in dieser der Zeichensalat auftritt. Ich bin davon ausgegangen, das die Daten bei PHP falsch ankommen.

    Ich bin dann mal weg.

    Einen Kommentar schreiben:


  • flflfl
    antwortet
    Ich habe im jquery ajax nun dataType = "html" angegeben (War mir am plausibelsten Specifying the Data Type for AJAX Requests - jQuery JavaScript Library)

    Brachte keine Besserung.

    Zusammenfassung: Form->JS macht encodeURIComponent -> POST -> PHP -> HTML-Mail daten kommen falsch an.

    Aus üöä wird ÌÀö

    Einen Kommentar schreiben:


  • mimomamu
    antwortet
    Zitat von flflfl Beitrag anzeigen
    Daten kommen mit POST.
    Dann musst du einen passende Content-Type-Header setzen. Als Content-Type bietet sich application/x-www-form-urlencoded an. Wenn du das nicht machst, dann werden die Daten als text/plain verwendet und PHP weiß nicht, wie sie zu interpretieren sind.

    Zitat von flflfl Beitrag anzeigen
    Also soll ich gar nichts im PHP-Teil machen?
    Jedenfalls kein html_entity_decode und am besten auch kein urldecode.

    Einen Kommentar schreiben:


  • flflfl
    antwortet
    Zitat von mimomamu Beitrag anzeigen
    Per GET oder per POST?
    Versuch's lieber mit [MAN]urldecode[/MAN]. Aber eigentlich macht PHP das automatisch.
    Daten kommen mit POST. urldecode brachte keine Besserung.

    Also soll ich gar nichts im PHP-Teil machen? nur im JS-Teil mit encodeURIComponent?

    Danke.

    Einen Kommentar schreiben:


  • mimomamu
    antwortet
    Zitat von flflfl Beitrag anzeigen
    ich habe auf meiner Homepage ein Formular, dass mit jquery und ajax versendet wird.
    Per GET oder per POST?

    Zitat von flflfl Beitrag anzeigen
    ... und encodiere die Daten im PHP-Teil mit
    Code:
    html_entity_decode
    .
    Versuch's lieber mit [MAN]urldecode[/MAN]. Aber eigentlich macht PHP das automatisch.

    Einen Kommentar schreiben:

Lädt...
X