フレームワークなしでPHP5.3を使用しています。
PHPファイルから別のPHP、HTML、またはJavascriptファイルに値を渡すにはどうすればよいですか?
使用して$_POST
私はそれを行うことができますが、フォームなしで値を渡す方法は?
PHPからPHPへ
cURLを使用
$url = 'http://domain.com/get-post.php';
$fields = array(
'lname'=>urlencode($last_name),
'fname'=>urlencode($first_name),
'title'=>urlencode($title),
'company'=>urlencode($institution),
'age'=>urlencode($age),
'email'=>urlencode($email),
'phone'=>urlencode($phone)
);
//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
//execute post
$result = curl_exec($ch);
//close connection
curl_close($ch);
PHPからHTMLへ
echo
(htmlはクライアント側であるため、それがあなたのhtmlであり、スクレイピングやインジェクションを行っていないことを前提としています)
PHPからJSへ
PHPからHTMLへの変換と同じ
フォームを使用せずに、クエリ文字列に追加するだけです。
example.com/page.html?var1=data&var2=data
フォーム、セッション、またはCookieを使用しない限り、オプションが不足していると思います。
非表示の入力を渡すことはそれを行うための許容可能な方法ですが、フォームが必要です。
セッション、Cookie、またはフォームを使用できない(使用したくない)理由はありますか?
クライアント側(HTML)から値を送信したいと想定しています。
なぜセッションを使いたくないのかわからない!
しかし、私が提案できる方法は、データベースを使用し、jQuery Ajaxを使用してデータベースに値を保存し、jQuery Ajaxを使用して、「フォーム」を使用してPHPにデータを送信することです。
DBに保存した後、任意のページにクエリを戻すことができます。
これがお役に立てば幸いです。
参照: jQuery Ajax
ありがとう