-2

私がindex.phpを持っているとしましょう:

<?php
    $currentUser = "Paedow";
?>

そして私はuser.phpを持っています:

<?php
    printf($_POST["currentUser"]);
?>

呼び出し中に変数$currentUseruser.phpに送信するにはどうすればよいですか?

このコードを試しましたが、ページを呼び出したり表示したりせずにデータを送信するだけです。

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

  return $res;
}
4

3 に答える 3

3

オプション1

データを投稿するクライアント側の JavaScript を使用し、出力を返すので、必要なことを行うことができます。jQuery.postを参照してください

オプション 2

サーバー側(すでに使用しているものなど)を使用しますが、代わりに cURL を使用して値を投稿します。cURLを参照

于 2012-11-22T17:41:50.687 に答える
0

私が好きなようにそれは不可能のようです。だから私は使用してCookiesいます。
別のオプションは、を使用することSessionです。

于 2012-12-02T16:08:51.810 に答える
0

の内容は次の$data_to_sendようになります。

currentUser=Paedow

これが、フォームで URL エンコードされたデータの外観です。

ただし、別のタックを提案できますか: cURL を使用して、代わりに HTTP POST を実行する方が簡単な場合があります。

$curl = curl_init(); 
curl_setopt($curl, CURLOPT_POST, true); 
curl_setopt($curl, CURLOPT_POSTFIELDS, $postdata); 
curl_setopt($curl, CURLOPT_URL, $endpoint); 
$response = curl_exec($curl);
curl_close($curl);
print_r($response);

(覚えておいてください、私はそれをテストしておらず、頭の上から入力しただけです。)

于 2012-11-22T17:44:29.023 に答える