ich kapiers nicht mehr

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

  • ich kapiers nicht mehr

    aus gründen der sicherheit befasse ich mich mit addslashes.
    in der php.ini ist
    magic_quotes_gpc = On
    aber wenn ich zum test die zeichen " ' etc. nehme dann werden die ohne \ in die db eingetragen. sollte ja nicht so sein oder??

    nun habe ich folgenden schnipsel ins script kopiert:
    PHP-Code:
    if (get_magic_quotes_gpc()) {
        
    // Rückwärtsstriche in Browservariablen einfügen
        
    foreach ($_GET as $key => $value) {
            
    $_GET[$key] = addslashes($value);
        }
        foreach (
    $_POST as $key => $value) {
            
    $_POST[$key] = addslashes($value);
        }
        foreach (
    $_COOKIE as $key => $value) {
            
    $_COOKIE[$key] = addslashes($value);
        }

    auf diese weise funktioniert es dann und der \ wird den zeichen vorangestellt wobei das eigentlich auf if(!get_magic....) stehen sollte um die sache zu aktivieren wenn auf dem server magic_quotes_gpc=Off eingestellt ist.
    kann mir jemand erklären warum wieso weshalb?

  • #2
    get_magic_quotes_gpc() gibt true bei gesetzt und false bei nicht gesetzt zurück.

    du machst das addslashes immer dann, wenn es sowieso schon da ist. das bringt dir also gar nichts...

    mache es so:

    PHP-Code:
    if (!get_magic_quotes_gpc())
    {
        
    // hier addslashes aufrufen.


    man achte auf das negierte.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      ja, wenn es auf "on" steht und ich zusätzlich if(get..) habe würde ich zusätzlich ein addslash machen wo schon einer ist. aber wenn ich if(!get...) benutze dann passiert rein garnix obwohl magic.. auf "on" steht.

      Kommentar


      • #4
        das ist ja auch der sinn, dass nichts passieren soll wenn MQ=on ist. denn das hat das php schon für dich gemacht.

        du musst/darfst es nur machen, wenn MQ=off ist.
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          kann es sein das ich dich nun auch verwirrt habe?
          ich habe MQ=on in der php.ini und wenn ich den obrigen code nicht ausführe dann passiert nichts. will heissen wenn der code nicht im script ist und MQ=on dann werden keine \ angehängt. sollte aber doch so sein wenn es "on" ist.

          Kommentar


          • #6
            ES BRAUCHEN KEINE ZUSÄTZLICHEN \ IN DIE EINGABE REIN, WENN MQ=ON IST!!!

            DAS MACHT PHP FÜR DICH.

            also wird auch nicht in die if gesprungen, wenn MQ=on ist, sondern nur bei MQ=off

            schaue mal in meiner sig nach dem guestbook und lies den thread.
            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


            Kommentar


            • #7
              dann würd ichs aber auch sehen können oder? zum beispiel wenn ich die variablen ohne stripslashes ausgebe oder wenn ich einfach in die datenbank schau...
              dem ist aber definitiv nicht so

              Kommentar


              • #8
                in der DB wirst du es nicht sehen...

                aber bei der ausgabe mit htmlentities() kannst du es sehen.
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar


                • #9
                  achso...
                  dann muss ich mir da eigentlich garkeine sorgen machen wenn benutzer so sachen wie " oder ' etc. benutzen und brauch auch kein zusätzliches add oder stripslashes benutzen wenn MQ=on ist?

                  Kommentar


                  • #10
                    add brauchst/darfst du bei MQ=on nicht machen. das passiert nur bei MQ=off

                    und strip machst du IMMER bei ausgaben.
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      der erste satz erfreut mich, der zweite eher weniger.
                      danke für die info und sorry für die nerverei

                      Kommentar


                      • #12
                        öhm, nochmal ne frage...
                        wenn ein user in ein formular zb. " Heute funktioniert "nicht" viel " eingibt und ich dann später im script den satz aus der db hole müsste ich doch stripslashes benutzen um den satz ohne \ anzuzeigen oder?

                        Kommentar


                        • #13
                          Original geschrieben von Abraxax
                          und strip machst du IMMER bei ausgaben.
                          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                          Kommentar


                          • #14
                            naja, dann stimmt da was nicht. denn wenn ich ohne stripslashes arbeite wird mir trotzdem der richtige text angezeigt. also kann da wohl doch etwas nicht stimmen

                            Kommentar


                            • #15
                              und htmlentities() solltest du grundsätzlich auch verwenden.

                              dann siehst du auch den unterschied zwischen strip und !strip.
                              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                              Kommentar

                              Lädt...
                              X