erst escape, dann encode - oder umgekehrte Reihenfolge

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

  • erst escape, dann encode - oder umgekehrte Reihenfolge

    hi,

    ich bearbeite Formulareingaben und möchte sicherstellen, dass die Daten

    a) escaped sind bevor sie in die DB geschrieben werden
    b) utf8-encoded sind

    Zur Info, escapen mach ich mit mysql_escape_string() und encoden mit utf8_encode() wenn mir mb_detect_encoding() sagt, dass ich Daten bekomme, die nicht utf8-encoded sind.

    Ich frage mich gerade welche Reihenfolge da sinnvoll ist - erst escapen, dann encoden oder umgekehrt?

  • #2
    Man sollte grundsätzlich das komplette Projekt auf utf-8 umstellen (Header, DB-Tabellen, Formular, ...). Dann stellt sich diese Frage nicht mehr, weil man ein utf8_encode() dann nicht mehr benötigt.

    Statt mysql_escape_string() solltest du übrigens mysql_real_escape_string() verwenden.
    Zuletzt geändert von deedee; 17.06.2009, 10:42.

    Kommentar


    • #3
      Und zusätzlich zum mysql_real_escape_string() würde ich noch strip_tags() empfehlen.

      Kommentar


      • #4
        Zitat von pascal007 Beitrag anzeigen
        Und zusätzlich zum mysql_real_escape_string() würde ich noch strip_tags() empfehlen.
        Das würde ich nicht tun - im Gegenteil, eher dringend davon abraten.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Zitat von wahsaga Beitrag anzeigen
          Das würde ich nicht tun - im Gegenteil, eher dringend davon abraten.
          Warum?
          [FONT="Helvetica"]twitter.com/unset[/FONT]

          Shitstorm Podcast – Wöchentliches Auskotzen

          Kommentar


          • #6
            Weil dann alle vom FCKEditor(nur ein Beispiel) gelieferten Daten kaputt gehen
            Wir werden alle sterben

            Kommentar


            • #7
              Zitat von combie Beitrag anzeigen
              Weil dann alle vom FCKEditor(nur ein Beispiel) gelieferten Daten kaputt gehen
              Was heißt "kaputt gehen"?
              [FONT="Helvetica"]twitter.com/unset[/FONT]

              Shitstorm Podcast – Wöchentliches Auskotzen

              Kommentar


              • #8
                Zitat von unset Beitrag anzeigen
                Was heißt "kaputt gehen"?
                Der FCKEditor gibt HTML-Code zurück. Mit strip_tags() entfernt man diesen und die komplette Formatierung geht verloren.

                Kommentar


                • #9
                  Nagut, dann anders rum....

                  strip_tags() ist eine Datenmanipulierungs Funktion!
                  Will man immer alle eingegebenen Daten manpulieren? Wohl nein.

                  Es ist meist klüger die Daten zu validieren und in Abhängigkeit davon ganz und komplett zuzulassen oder abzuweisen.
                  Zuletzt geändert von combie; 19.06.2009, 14:23.
                  Wir werden alle sterben

                  Kommentar


                  • #10
                    Oh man, ich Depp. Ich hab die Erwähnung von strip_tags() überlesen und dachte, ihr bezieht euch auf mysql_real_escape …*bin wohl noch vom Mittagessen im Fresskoma ;-)
                    [FONT="Helvetica"]twitter.com/unset[/FONT]

                    Shitstorm Podcast – Wöchentliches Auskotzen

                    Kommentar

                    Lädt...
                    X