Ausschließen von Zeichen

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

  • Ausschließen von Zeichen

    Hallo,

    ich möchte zum Beispiel das man in meinem Skript sein Passwort ändern kann. Ich möchte aber bestimmte Zeichen ausschließen.

    Entweder nur Zulassen von Buchstaben groß ,klein und Zahlen

    Oder ausschließen von ä ö ü !"§$%&/()=? u.s.w

  • #2
    Ja, dann mach das! Wo ist das Problem?

    Kommentar


    • #3
      Mir ist leider keine Funktion bekannt, und finde keine. Ein Hinweis mit einer Funktion wäre schön.

      Kommentar


      • #4
        Ich möchte aber bestimmte Zeichen ausschließen.
        Wozu soll das denn gut sein?
        Je mehr Sonderzeichen erlaubt sind, desto schwerer zu erraten!!


        Original geschrieben von devas
        Mir ist leider keine Funktion bekannt, und finde keine. Ein Hinweis mit einer Funktion wäre schön.
        Schau mal ins Handbuch bei den ctype und preg Funktionen.
        Zuletzt geändert von combie; 09.12.2007, 17:20.
        Wir werden alle sterben

        Kommentar


        • #5
          Lieber filter als preg.
          Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

          Kommentar


          • #6
            Danke schon mal für die Hinweise


            dafür habe ich mich entschlossen:

            if (preg_match("/[^a-zA-Z0-9]/", $variable)){
            echo"falsche Zeichen verwendet";
            }


            und damit entferne ich die "falschen" Zeichen

            $variable= preg_replace("/[^a-zA-Z0-9]/", "", $variable);



            Oder kann man da was umgehen?

            Kommentar


            • #7
              Schwachsinn...^^ - löschbar
              Zuletzt geändert von Blackgreetz; 09.12.2007, 21:45.

              Kommentar


              • #8
                @Blackgreetz
                wie kommst du darauf hier zu bestimmen, ob was gelöscht wird? mal davon abgesehen, dass es höchstens nach Trash verschoben wird?
                it's not a bug,
                it's a feature!

                Kommentar


                • #9
                  Original geschrieben von XGremliN
                  @Blackgreetz
                  wie kommst du darauf hier zu bestimmen, ob was gelöscht wird? mal davon abgesehen, dass es höchstens nach Trash verschoben wird?
                  Ich meinte eigentlich meinen Post und nicht das Thema
                  Hatte da erst was geschrieben, was aber dann, bei genauerer Betrachtung, unsinnig war ...

                  Kommentar


                  • #10
                    $variable= preg_replace("/[^a-zA-Z0-9]/", "", $variable);
                    Ich würde jetzt nicht verbotene Zeichen entfernen. Sonst hat der User ja keine Ahnung mehr in welcher Form sein PW nun angenommen wurde. Besser einfach auf ungültige Zeichen zu prüfen und das PW nicht zu akzeptieren, wenn solche vorhanden sind.

                    Gruss

                    tobi
                    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                    Kommentar


                    • #11
                      Wieso willst du diese Sonderzeichen eigentlich ausschließen? Ist doch absolut überflüssig!!

                      Kommentar


                      • #12
                        Das mit dem PW war nur ein Beispiel. Eigentlich will ich lernen wie ich Zeichen ausschließe oder nur zulasse.

                        Dabei denke ich vorallem daran, dass mir Irgendwlecher Code eingeschleust werden könnte, was ich verhindern will.

                        Ich habe zwar was zum Thema SQL Injektangriffe gelesen, aber so richtig blicke ich noch nicht durch wie ich das verhindern soll. Ich versuche mit mysql_real_escape_string mich zuschützen aber ich willnatürlich auch die Dinge Filtern die die User per Formular eingeben dürfen.

                        Kommentar


                        • #13
                          Beim speichern in die Datenbank: mysql_real_escape_string()
                          Beim ausgeben der Strings auf der Seite: htmlentities()

                          Kommentar


                          • #14
                            strip_tags() nicht vergessen, auf alles Anwenden, was an Texten vom User kommt. Auch bei HTML Fragmenten möglich, weil die Funktion hat ja noch mehr Parameter

                            Hochgeladene Dateien pingelig überprüfen!!
                            z.B. Ist die jpg wirklich ein Bild ???
                            Und nein, die vom Browser kommenden Typeangaben unbrauchbar. Einzig ein Inditz für eine Attacke können sie liefern.

                            usw.....
                            Wir werden alle sterben

                            Kommentar


                            • #15
                              strip_tags() nicht vergessen, auf alles Anwenden, was an Texten vom User kommt.
                              Na Klasse, und alle meine mühselig eingegebenen HTML-Tags sind futsch An Benutzereingaben herum zu fuschen ist mehr als daneben, wenn es nicht ausdrücklich so gewollt ist!
                              Wie schon gesagt wurde, mysql_real_escape_string oder entsprechend die anderen escape-Funktionen für andere DBMS.

                              Kommentar

                              Lädt...
                              X