http_post_data

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

  • http_post_data

    Liebes Forum,

    ich brauche mal bitte Hilfe bei deiser Funktion http_post_data

    Ich hatte bisher einen Login über ein Formular gemacht um Daten einzusehen.
    Für den Login verwendete ich folgendes Formular.

    <form method="POST" action="www.domain.de/index.php" >
    <input type="text" name="user" value="benutzer" >
    <input type="text" name="pw" value="pass" >
    <input type="submit" value="Anzeigen">
    </form>


    Damit das alles etwas schöner wird, möchte ich die Daten nach dem Login in mein Skript einbinden, damit ich die nicht mehr abtippen muß.

    Um die Daten zu bearbeiten, brauch ich sie als String.

    Der Anbieter verweist auf das PHP Handbuch mit dieser Funktion.

    Leider finde ich keine Erläuterung die mich in der Anwendung etwas weiter bringt.



    string http_post_data ( string url [, string data [, array options [, array &info]]] )



    $string = http_post_data ( 'www.domain.de/index.php' [, string data [, array options [, array &info]]] )

    Wo müssen jetzt die Variablen mit ihren Werten hin? Kann mir mal bitte jemand helfen damit ich diese Funktion verstehe?

    Danke

  • #2
    versuchs einfach mal mit
    PHP-Code:
      $value $_POST['variable']; 
    zum Beispiel
    PHP-Code:
    $user $_POST['user']; 
    mfg

    Kommentar


    • #3
      Ich will das Formular ersetzen und nicht weiter nutzen.


      Die Zugangsdaten lege ich natürlich fest:

      $user='benutzer';
      $pw='pass';

      Kommentar


      • #4
        Um ehrlich zu sein verstehe ich nicht, was genau du eigentlich vor hast. Könntest du das nochmal etwas präziser erklären?
        Nieder mit der Camel Case-Konvention

        Kommentar


        • #5
          Ich erklär das noch mal was ich will.


          Die Url www.domain.de/index.php wartet auf folgende Variablen

          $_POST['user'] mit dem Wert benutzer
          $_POST['pw'] mit dem Wert pass


          Die Antwort nach der Übergabe der beiden Variablen soll in einem String geladen werden.

          Als geeignete Funktion erscheint mir

          string http_post_data ( string url [, string data [, array options [, array &info]]] )

          Mein Problem:

          string url kommt das wohl rein www.domain.de/index.php


          Bei denen hier ist mir nicht klar was da rein kommt.

          string data
          array options
          array &info
          EDIT:
          Regeln lesen, Fremddomains nicht verlinken lassen.
          Zuletzt geändert von wahsaga; 18.02.2007, 17:53.

          Kommentar


          • #6
            da gibt es ganz ausführliche lektüren zu deinem thema:

            http://tut.php-q.net/kommunikation.html
            http://tut.php-q.net/formulare.html

            Kommentar


            • #7
              Original geschrieben von devas
              Die Url www.domain.de/index.php wartet auf folgende Variablen

              $_POST['user'] mit dem Wert benutzer
              $_POST['pw'] mit dem Wert pass

              Die Antwort nach der Übergabe der beiden Variablen soll in einem String geladen werden.
              achso, du möchtest per script einen post-request absetzen.
              mal abgesehen von http_post_data() könntest du dir auch mal das ansehen:
              Snoopy.php - der PHP net client
              ist bestimmt nützlicher und flexibler

              Kommentar


              • #8
                ja ich möchte per script einen post-request absetzen


                komme natürlich nicht klar damit

                string http_post_data ( string $url [, string $data [, array $options [, array &$info ]]] )

                habe das mal so umgesetzt.

                $url="http://www. .de/login.php";
                $data['user']="Mitglied";
                $data['pw']="hallo";


                $string=http_post_data ($url[array $data]);



                bekomme folgende Meldung für die letzte Zeile

                parse error, unexpected T_VARIABLE, expecting '(

                Kommentar


                • #9
                  Versuchs doch mal mit http_post_fields() statt http_post_data(). Dort gibst du die Felder als Array mit.
                  Gruss
                  H2O

                  Kommentar


                  • #10
                    habe mich mal versucht an dem Beispiel zu halten:


                    $fields = array(
                    'user' => 'Mitglied',
                    'type' => 'text',
                    );

                    $fields2 = array(
                    'pw' => 'hallo',
                    'type' => 'password',
                    );



                    $response = http_post_fields('http://www. .de/login.php', $fields, $fields2);


                    Meldung :Call to undefined function http_post_fields()

                    Kommentar


                    • #11
                      http_post_fields ist imho eine erweiterung des pecl für php. das muss schon installiert sein.

                      gruß
                      peter
                      Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                      Meine Seite

                      Kommentar


                      • #12
                        Das finde ich eher seltsam, dass http_post_data() vorhanden sein soll, http_post_fields() jedoch nicht, da beide zur gleichen PECL-Erweiterung gehören. Da kann ich leider auch nicht weiter helfen.
                        Abgesehen davon müsste der Code folgendermassen aussehen (du schickst ja keine Files mit):
                        PHP-Code:
                        $fields = array(
                            
                        'user' => 'Mitglied',
                            
                        'pw' => 'hallo',
                        );

                        $response http_post_fields('http://www. .de/login.php'$fields); 
                        Gruss
                        H2O

                        Kommentar


                        • #13
                          nach über einem jahr hast du das problem immer noch nicht gelöst?

                          Kommentar


                          • #14
                            Nun das Problem aus dem letzten Jahr wurde gelöst. Nur eben nicht mit der Idee aus diesem Beitrag. Es wurde eine Grundsätzlich andere Lösung gefunden.

                            ein post-request scheint aber mehr Probleme zu machen als ich es mir gedacht habe.

                            Die Erweitrungen für http_post_data() und http_post_fields() und auch die Klasse snoopy oder so stehen auf meinem System nicht zur verfügung und lassen sich auch nicht nachträglich einrichten

                            Ich schätze das ich auch diesmal auf einen post-request verzichten muß.

                            Kommentar


                            • #15
                              eine php-klasse wirst du ja wohl uploaden können?

                              einen popligen post-request kannst du auch mit den socket-funktionen absetzen. Wie kann ich einen HTTP POST-Request absenden?

                              oder auch mit cURL

                              Kommentar

                              Lädt...
                              X