Eingabe von z.B. HTML Scripten verhindern!

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

  • Eingabe von z.B. HTML Scripten verhindern!

    Auf meiner PHP Seite haben Benutzer die Möglichkeit gewisse Angaben z.B. zu Ihrer Person über ein Formular zu machen. Diese Daten speichere ich dann in eine MySQL Datenbank, um diese dann darstellen zu können.
    So weit so gut... Jetzt habe ich aber das Problem wenn Benutzer nicht nur einfachen Test eingeben sondern z.B. HTML Code wird dieser verarbeitet und angezeigt! Dies möchte ich verhindern!

    Habt Ihr eine Idee wie ich dies realisieren kann?

    Danke für jeden Tipp!
    Nora

  • #2
    htmlentities bei der ausgabe?

    und beim speichern - abhängig vom ergebnis von get_magic_quotes_gpc - noch ein mysql_real_escape_string
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      Original geschrieben von mrhappiness
      und beim speichern - abhängig vom ergebnis von get_magic_quotes_gpc - noch ein mysql_real_escape_string
      Jein.
      Besser:

      Vor dem Abspeichern in Abhängigkeit von get_magic_quotes_gpc() ein stripslashes(), und
      auf jeden Fall mysql_real_escape_string().
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        OffTopic:
        mea culpa...

        Predige ich sonst ja auch (fast) immer und überall und ausgerechnet da, wo ich's einmal nicht mache, musst du kommen und lesen...
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          OffTopic:
          da sieht man dass du noch kein Prediger geworden bist

          Kommentar


          • #6
            Mein Script sieht jetzt so aus:
            PHP-Code:
            $edit_text trim($_POST["meintext"]);

            if ((bool) 
            get_magic_quotes_gpc()) {
                
            $edit_text stripslashes(mysql_real_escape_string($edit_text));
            }

            // speichern in Datenbank

            echo htmlentities(urldecode($edit_text)); 
            Problem: In Speziellen Fällen möchte ich gern das Absätz gemacht werden können. Das hatte ich bisher so gemacht:

            PHP-Code:
            $edit_text str_replace("\n""<br />"$edit_text); 
            Beides zusammen funktioniert aber natürlich nicht. Was kann ich also machen um HTML Code usw. zu unterdrücken, jedoch im speziellen Fall Absätze zulassen?

            Hat da wer eine Idee?
            Nora

            Kommentar


            • #7
              die werden bei der ausgabe mittels nl2br gemacht!

              Kommentar


              • #8
                Original geschrieben von Nora
                Beides zusammen funktioniert aber natürlich nicht.
                Natürlich funktioniert auch beides zusammen - aber eben nur in der richtigen Reihenfolge.
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Richtige Reinfolge? Und wie ist die?
                  Nora

                  Kommentar


                  • #10
                    Original geschrieben von Nora
                    Richtige Reinfolge? Und wie ist die?
                    Hast du darüber nachgedacht?
                    Dann sollte dir das eigentlich selber klar sein.

                    Ansonsten im Zweifelsfalle ist "richtig" einfach "andersherum", als du es bisher probiert hast, dann das war ja "falsch".
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar

                    Lädt...
                    X