phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?AW:_=5Bphp=5D_Mit_PHP_Formulare_ausf=FCllen?=

[php] AW: [php] Mit PHP Formulare ausfüllen

Jochen Metzger php_(at)_phpcenter.de
Fri, 7 Dec 2001 13:34:23 +0100


Hi Benny,


> Hi Liste!
>
> Ich weiss das wurde schon öfters gefragt aber ich konnte nichts im Archiv
> und beim googeln finden...
>
> Ich will mit meinem PHP Script auf Server A ein HTML Formular auf Server B
> ausfüllen und abschicken. Ich weiss es geht irgendwie mit FPUT
> aber ich komm
> auf keinen grünen Zweig. Bitte helft mir! Thx!
>
> Gruss, Benny!
Hi, probiers mal hiermit:

 <?php

function PostToHost($host, $path, $referer, $data_to_send) {
  $fp = fsockopen($host,80);
  printf("Open!\n");
  fputs($fp, "POST $path HTTP/1.1\n");
  fputs($fp, "Host: $host\n");
  fputs($fp, "Referer: $referer\n");
  fputs($fp, "Content-type: application/x-www-form-urlencoded\n");
  fputs($fp, "Content-length: ".strlen($data_to_send)."\n");
  fputs($fp, "Connection: close\n\n");
  fputs($fp, "$data_to_send\n");
  printf("Sent!\n");
  while(!feof($fp)) {
      $res .= fgets($fp, 128);
  }
  printf("Done!\n");
  fclose($fp);

  return $res;
}
$data[mailto]="a";
$data[vorname]="b";
$data[name]="c";

foreach ($data as $key=>$val)
          {$val=($key!=mailto &&
$key!="required_fields")?urlencode($val):$val;
           $send=$send."&".$key."=".$val;
          }

// erstes Zeichen entfernen
$send=substr($send,1,strlen($send)-1);


printf("Go!\n");
$x = PostToHost(
              "www.domain.de",
              "/pfad_zu_datei_die_nach_formular_aufgerufen_wird/",
              "http://www.domain.de/pfad/zum/formular/",
              $send
);

?>

Müßte so auch in den php-faq auf www.koehntopp.de stehen

HTH
Jochen


php::bar PHP Wiki   -   Listenarchive