peter studer: http post

hallo !

gibt es irgend eine möglichkeit, per php einen http-post durchzuführen, damit ich zb nachher in einer schlaufe 10mal das gleiche dokument 'anposten' kann, ohne dabei ein formular verwenden zu müssen ?

vielen dank, peter

  1. Hallo

    gibt es irgend eine möglichkeit, per php einen http-post durchzuführen,

    http://www.php-faq.de/q/q-code-post.html

    viele Grüße

    Axel

    1. danke, soweit funktioniert das schonmal.

      doch wie kann ich einen 'https' host korrekt 'anposten' ?

      vielen dank

      1. Frohe Weihnachten Alex,

        doch wie kann ich einen 'https' host korrekt 'anposten'?

        generell bietet PHP zwei unterschiedliche Möglichkeiten der SSL-/TLS-Unterstützung an:

        PHP wurde mit cURL übersetzt
            (--with-curl --with-curlwrappers), wobei cURL selbst mit openssl kompiliert wurde
        PHP wurde mit openssl übersetzt
            (per default und [somit] in den meisten Fällen verfügbar)

        Diese Informationen kannst Du durch Aufruf von phpinfo() unter "Configure Command" ablesen.

        Für den eher unwahrscheinlichen Fall, daß Du PHP in der Version 5.1.x installiert hast, kannst Du folgendes Script an Deine Bedürfnisse anpassen:

          
        /** Voraussetung ist für dieses Beispiel ein Installation mit openssl */  
          
        function post_req(){  
         # [link:http://www.php-faq.de/q/q-code-post.html]  
        }  
        $host='www.weiss-ich.net';  
        if(is_resource($s=@stream_socket_client('tcp://'.$host,$en,$es,2))){  
         if(stream_socket_enable_crypto($s,true,STREAM_CRYPTO_METHOD_SSLv23_CLIENT)){  
          post_req();  
         }  
         fclose($s);  
        }  
        else{  
         mach_was_mit($en,$es);  
        }  
        
        

        Weiterhin besteht noch die Möglichkeit einen eigenen "Context" zu registrieren, um POST-Daten zu versenden stream_context_create(). (Damit habe ich mich selbst noch nicht mit befaßt.)

        Andernfalls könnte cURL (curl_setopt()) für Dich die Wahl sein.

        Gruß aus Berlin!
        eddi

        --
        Ja - ich gebe manchmal Lösungen auf dem silbernen Tablett und
        Nein - sie werden dennoch nicht den Schlag vor den Kopf mit dem goldenen abwehren ;)
        1. vielen dank schonmal .

          leider werde ich aus diesem cURL nicht wirklich schlau.
          hätte niemand gerade ein fertiges beispiel für einen https post ?

          ich wäre sehr dankbar ;-)

          gruss

          1. Hallo Peter,

            ich habe mich dann mal mit der der Funktion stream_context_create() auseinandergesetzt. Es ist sogar erheblich leichter, als mit cURL zu arbeiten. Sogar so einfach, daß Du das auch schaffst ;)

            Das ist die Funktion, die Du brauchst: stream_context_create()
            Das dort angegebene Beispiel mußt Du nur mit den Optionen der Tabelle M-3. Context options anpassen.

            Aller Anfang ist schwer, aber es wird immer beim Anfang bleiben, wenn Du nicht aus eigenem Antrieb heraus lernen willst, sondern darauf hoffst, daß Dir andere etwas vorsetzen.

            Gruß aus Berlin!
            eddi

            --
            Ja - ich gebe manchmal Lösungen auf dem silbernen Tablett und
            Nein - sie werden dennoch nicht den Schlag vor den Kopf mit dem goldenen abwehren ;)