Query_string

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

  • Query_string

    Hallo,
    ich habe ein Problem und zwar weiß ich nicht wie ich mit einem QUERY_STRING mein serialisiertes Array an ein anderes Skript übergeben muß?
    Kann mir jmd. viel. ein Beispiel geben?
    Also ich will es nicht mit get oder post machen sondern die Werte
    (aus dem POST-Request) werden mittels eines reinen QUERY_STRING an
    das PHP-Skript übergeben (lt. Aufgabenstellung). Das Skript test.php bekommt
    also keine POST-Variablen und auch keine GET-Variablen.

    Kann mir jmd. helfen!
    Gruß

  • #2
    Ein Query-String besteht aus GET-Variablen
    Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
    var_dump(), print_r(), debug_backtrace und echo.
    Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
    Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
    Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

    Kommentar


    • #3
      schau doch mal im Handbuch unter...
      PHP-Code:
      parse_str() 
      ..nach.

      Vielleicht hilft's weiter.

      Wo kämen wir hin, wenn jeder sagte: Wo kämen wir hin? und keiner ginge, um zu sehen, wohin wir kämen, wenn wir gingen?

      Kommentar


      • #4
        Also ein Query_string ist soetwas wie

        variable1=test&variable2=nocheintest

        Also würde deine test.php die werte per $_REQUEST / $_GET oder $HTTP_GET_VARS beziehen müssen.

        Deine Daten hängst du an die URL an (davor noch urlencode ansehen...) und die test.php liest sie wieder ab.
        gruss Chris

        [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

        Kommentar


        • #5
          Naja ich weiß nicht so recht wie ich ein URL kodiertes, serialisiertes
          Array, das als QUERY_STRING an das Skript,
          welches eine Grafik erzeugt uebergeben wird, machen muss.
          ??
          Code:
          $array=($_POST['txt_formel'], $_POST['txt_x1'], $_POST['txt_x2']);
          $qstr=urlencode(serialize($array));*/
          $_SERVER['QUERY_STRING']=$qstr;
          Das ist jedenfalls nicht richtig

          Kommentar


          • #6
            Also in form von

            Code:
            <img src="test.php?var=inhalt&var2=inhalt2">
            oder wie darf man das mit dem Grafik erzeugen verstehen?
            gruss Chris

            [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

            Kommentar


            • #7
              Original geschrieben von fabilazar
              Das ist jedenfalls nicht richtig
              stimmt, gibt nen parse error. und kommt mir latent unfugig vor.

              abgesehen davon, was soll das bitte werden?
              Kissolino.com

              Kommentar


              • #8
                Ich denke langsam daran das es Hausaufgaben werden sollen.
                Da muss ich passen. Ansätze ja, Hausaufgaben für andere erledigen nein...
                gruss Chris

                [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

                Kommentar


                • #9
                  Naja, ich muß drei Textfelder auslesen und wie gesagt über einen QUERY_STRING an ein anderes Skript übergeben. In diesem Skript wird dann ein Image erzeugt. Genau zu sagen ein Polynom der aus einem der Textfelder als Funktionsgleichung ausgelesen wurde und danach noch in PHP-code umgewandelt werden muß, um letztendlich die Funktion als Grafik darstellen zu können.
                  Bin grad so ein wenig planlos wie ich das anstellen kann, deswegen ist der Code auch nicht richtig...Sch...hätte früher anfangen sollen mit PHP

                  Kommentar


                  • #10
                    http://forum.de.selfhtml.org/?t=109130&m=681220
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      OffTopic:

                      Ui da is jemand verzweifelt

                      gruss Chris

                      [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

                      Kommentar


                      • #12
                        Hallo,

                        wo ist das Problem?

                        Es sei auch mal gesagt dass man Werte nicht nur in der klassischen Art von

                        http://www.xyz.de/script.php?x=1&y=2

                        übergeben kann, sondern wie hier wohl gefordert als serzialisiertes Array in einem einzigen Query-String.

                        http://www.xyz.de/script.php?%3A2%3A...%3Bi%3A2%3B%7D

                        Damit stände dir in script.php in $_SERVER["QUERY_STRING"] das serialisierte Array zur Verfügung dass du dann mit

                        $request_array = unserialize(urldecode($_SERVER["QUERY_STRING"]));

                        wieder zurückwandeln kannst.

                        Da es hier ja scheinbar um Hausaufgaben geht, spekuliere ich nicht über denn Sinn einer solchen Übergabe von Werten, wie man ja sieht kommt hier für die Werte x=1 und y=2 ja schon ein irrsinnig langer Query-String raus.

                        Für dich bedeutet das, dass du deine Variable $qstr aus deinem Codebeispiel einfach mit nem ? an dein Script übergeben kannst. Deine Zeile danach vergisst du einfach wieder, die hat im aufrufenden Script nix verloren und ist überhaupt unsinnig.

                        Gruss
                        Quetschi
                        Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                        Schön - etwas Geschichte kann ja nicht schaden.
                        Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                        Kommentar


                        • #13
                          Danke Quetschi für deine Hilfe!
                          Nun ich habe es schon so weit hingekriegt. Hier der Code

                          Code:
                          $array[0] = $_POST['txt_x1'];
                          $array[1] = $_POST['txt_x2'];
                          $array[2] = $_POST['txt_formel'];
                          	
                          $qstr=urlencode(serialize($array));
                          $schritt = 2;
                          ...
                           if ($schritt > 1) {
                          echo "<td colspan=\"3\"><img src=\"graph.php?$qstr\"</td>\n";
                          ...
                          In dem Skript graph.php muss ich wieder darauf zugreifen und die Werte über den QUERY_STRING auslesen.

                          Code:
                          if(isset($_SERVER['QUERY_STRING']) AND !empty($_SERVER['QUERY_STRING'])){
                          
                          $array_formel=unserialize(urldecode($_SERVER['QUERY_STRING']));
                          }
                          else{
                          echo "Fehler ist aufgetreten!"
                          Jetzt muss ich es testweise in mein erzeugtes Image reindrucken. Und zwar die drei übergebenen Werte.
                          Muß ich mein $_SERVER['QUERY_STRING'] noch aufbröseln mit explode() oder macht es unserialize schon automatisch?
                          Gruss

                          Kommentar


                          • #14
                            Original geschrieben von fabilazar
                            Muß ich mein $_SERVER['QUERY_STRING'] noch aufbröseln mit explode() oder macht es unserialize schon automatisch?
                            Was sagt denn das Handbuch zu unserialize?
                            Was sagen deine TEstausgaben mittels echo und print_r bzw. var_export?
                            Ich denke, also bin ich. - Einige sind trotzdem...

                            Kommentar


                            • #15
                              Wozu $_SERVER["QUERY_STRING"] nochmal aufbröseln?

                              Du hast ja bereits was in $array_formel (Hier hast du ja selbst im Namen schon angegeben was drin ist) stehen, guck dir halt das mal an, dann sollte sich der Rest von selbst ergeben.
                              Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                              Schön - etwas Geschichte kann ja nicht schaden.
                              Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                              Kommentar

                              Lädt...
                              X