$_GET & $_POST Anpassung

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

  • $_GET & $_POST Anpassung

    Hallo,
    Momentan versuche ich mein Script ein wenig sicherer zu machen und möchte die Variablen nur noch mit $_POST oder $_GET entgegennehmen.
    Nun suche ich nach einer Möglichkeit dies strukturiert durchzuführen.
    Mit folgendem Code kam ich zwar schon ziemlich weit, aber das ist doch wohl nicht der richtige Ansatz oder?
    PHP-Code:
    $suche="formular.php";
    $u_referrer getenv("HTTP_REFERER");
    if (
    strchr($url_array[path],$suche)!="")
    {
    $doit=$_GET["doit"]; //Wurde über einen Link übergeben
    }

    else
    {
    $doit=$_POST["doit"];//Wurde über ein Forumlar übergeben

    Wie kann ich das denn am Besten umsetzen?

    Gruß und Danke
    Tobias

  • #2
    weißt du nicht, wo die variablen herkommen müssten?

    kannst dir ja auch mal extract anschauen (und bei den codeschnipseln suchen, da steht sowas drin *g*)
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      statt $_GET $_REQUEST nehmen, wenn es so gemacht wird :
      index.php?var1=wert1&wert2=wert2...


      An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

      Kommentar


      • #4
        Hallo,
        Ich habe soeben gelesen, dass ich mir die Arbeit mit GET und POST sparen kann, da alle gemeinsam in REQUEST stehen würden.
        Habe es mal ausprobiert und es hat auch tatsächlich funktioniert. Nun würde ich aber mal gerne wissen, wie das mit dem Sicherheitsapekt aussieht.
        Kann es sein, dass ich durch das nutzen der REQUEST Variablen nun wieder genauso weit bin wie vorher als ich noch REGISTER_GLOBALS = onhatte? Nun kann mein Script doch auch wieder durch Eingabe der Variablen in der Browserleiste das Script verändert werden oder?

        Gruß

        Tobias

        Kommentar


        • #5
          kommt drauf an, was für ne GPC-Reihenfolge (Get, Post, Cookie) du hast, im zweifelsfall aber ja (unsicher)
          nachzulesen mit ini_get

          warum weißt du nicht, wo die variablenherkommen?
          Ich denke, also bin ich. - Einige sind trotzdem...

          Kommentar


          • #6
            Hi,
            Klar weiß ich wo die Variablen herkommen.
            Nur habe ich das Problem, dass ich manchmal dem Script von ner anderen Seite Werte übergebe mittels einem Link und dann aber in dem Script selbst die Variable auch nutze um an sich selbst mittels post Werte zu übergeben. Damit ich hier nicht mit dem GET und POST durcheinander komme habe ich nach einer einfacheren Möglichkeit gesucht.
            Nun stehe ich aber vor einem weiteren Problem:
            Ich habe noch ein Upload-Formular
            PHP-Code:
            <form  action="./upload/upload.php" method="POST" enctype="multipart/form-data">
            <
            input name="file" type="file">
            <
            input type="submit" value="Hochladen">
            </
            form
            Ich wollte dann auf der upload.php mittels $_POST[file_name] auf den Namen zugreifen.
            Das hat leider nicht funktioniert. Ich erhalte den Namen einfach nicht. Auch mit REQUEST hat es nicht funktioniert.
            Woran kann das noch liegen?

            Gruß
            Tobias

            Kommentar


            • #7
              $_FILES wird dein Freund

              zu deinem anderen problem: hast du dir extract mal angeschaut?
              Ich denke, also bin ich. - Einige sind trotzdem...

              Kommentar


              • #8
                Original geschrieben von tsaenger
                Ich wollte dann auf der upload.php mittels $_POST[file_name] auf den Namen zugreifen.
                Das hat leider nicht funktioniert. Ich erhalte den Namen einfach nicht. Auch mit REQUEST hat es nicht funktioniert.
                für file-uploads solltest du $_FILES[] nehmen.

                http://dclp-faq.de/q/q-formular-upload-php4.html
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  überleg dir doch einfach den zweck der variable ..

                  zB:
                  passwörter, etc sollter nur per formular kommen => $_POST
                  wenn du mehrere layouts hast dürfen die herkommen wie sie wollen (get, post, cookie, session, ..) => $_REQUEST

                  die oftgesehene action übernehm ich aus dem $_REQUEST .. da es einfach wurscht is wo die herkommt, find ich jedenfalls .. wenn jemand lust hat sich selbst ein cookie anzulegen wo action mit 'login' definiert is, soll er dies tun .. aber dann bitte nicht wundern wenn immer das loginformular kommt ..

                  aufpassen musst du nur wenn du (wichtige) variablen verarbeiten willst, zb in einer datenbank oder so .. die solltest du nie 1:1 wiedergeben, schon gar nicht akzeptieren wenn sie woher kommen wo du es nicht vorgesehen hast .. drum nochmal: passwörter nehm ich nur per $_POST an ..

                  vlt etwas wirr-warr geschrieben, sollte aber doch etwas aufschluss geben (hoff ich zumindest) ..
                  mfg,
                  [color=#0080c0]Coragon[/color]

                  Kommentar


                  • #10
                    Hallo,
                    Vielen dank für eure Hilfe.
                    Hat mich schon um einiges weiter gebracht.

                    @mrhappiness:
                    Ich habe es mit angeschaut konnte es aber irgendwie nicht mit meinem Problem in Verbindung bringen.
                    Gruß

                    Tobias

                    Kommentar


                    • #11
                      du hast im feld username des formulars Hans stehen und im URL-Parameter username den wert Markus
                      PHP-Code:
                      extract($_GET);
                      extract($_POST);
                      echo 
                      $username
                      gibt Hans aus, vertauscht du die beiden extract-anweisungen, wird Markus ausgegeben

                      kannst du das gebrauchen?
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        Ah jetzt ja !!
                        Eine Insel.

                        Vielen Dank! Versuche jetzt mal mein Glück!

                        Tobias

                        Kommentar

                        Lädt...
                        X