Marcel: HTTP POST Datenstrom mit php empfangen

Hallo,

ich bekomme  von einem Server einen XML Datenstrom per HTTP-POST
gesendet. Mehr als "HTTP-POST" weiß ich leider nicht.

Wie kann ich denn den Datenstrom mit php empfangen?

In einem Forum habe ich gelesen das mit "$HTTP_RAW_POST_DATA" geht.
Dazu muss aber in der php.ini die Variable
"always_populate_raw_post_data" auf on gesetzt sein, dies ist aber
beim Provider wo das Script läuft (1&1) nicht der Fall.

Hat jemand Erfahrung damit?
Kann ich die o.g. Variable auch in der .htaccess Datei setzen?
Oder gibt es noch eine andere, vielleicht sogar bessere Methode?
Oder kennt jemand ein Tutorial / Beispielscript etc?

Bin dankbar für jeden Tipp.

Gruß Marcel

  1. hi,

    Kann ich die o.g. Variable auch in der .htaccess Datei setzen?

    Changeable: PHP_INI_PERDIR (Hinweise zur Version beachten.)

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
  2. Hi,

    Wie kann ich denn den Datenstrom mit php empfangen?

    In einem Forum habe ich gelesen das mit "$HTTP_RAW_POST_DATA" geht.

    ja, das geht.

    Dazu muss aber in der php.ini die Variable
    "always_populate_raw_post_data" auf on gesetzt sein, dies ist aber
    beim Provider wo das Script läuft (1&1) nicht der Fall.

    Unabhängig von dieser Einstellung kannst du die Daten auch mittels des dafür vorgesehenen input streams "php://input" empfangen.

      
    $xml = file_get_contents("php://input");  
    
    

    Gruß,
    Andreas.

    1. Hallo Andreas,

      vielen Dank für den Tipp!

      $xml = file_get_contents("php://input");

      
      >   
      > Gruß,  
      > Andreas.  
        
      Das funktioniert auf Anhieb super!!!  
      Nochmals besten Dank!  
        
      Gruß Marcel
      
  3. habe d'ehre Marcel

    Dazu muss aber in der php.ini die Variable
    "always_populate_raw_post_data" auf on gesetzt sein, dies ist aber
    beim Provider wo das Script läuft (1&1) nicht der Fall.

    Die Loesung hast Du ja schon, noch ein kleiner Hinweis am Rande:

    Bei 1&1 kannst Du auch die Werte aendern, Du musst lediglich in den Verzeichnissen mit php-Dateien eine eigene php.ini ablegen. Dies ist vor allem fuer ein paar "knifflige" EInstellungen wie "register_globals" und "allow_url_fopen" sinnvoll, da beide generell auf ON stehen.

    man liest sich
    Wilhelm