還有使用查詢字符串另一種方式,具體如下:
<?php
if (isset($_SERVER['QUERY_STRING']) && $_SERVER['QUERY_STRING'] != null) {
$qs = htmlentities($_SERVER['QUERY_STRING']);
list(,$ans) = explode("=",$qs);
if ($ans) {
echo "Your answer is $ans. ";
}
exit("Thank you");
}
?>
你可以把PHP代碼在網頁的頂部,隨後是包含以下的JavaScript的HTML:
<script>
var ans = false;
if(ans = confirm("Are you sure?")) {
this.location += "?answer=" + ans;
}
else
{
document.write("Action cancelled since you seem unsure");
}
</script>
儘管Ajax非常優雅,但動態生成包含該變量的查詢字符串也是一個可行的選項。如果需要,你可以張貼的查詢字符串沒有硬編碼通過利用stream_context_create()的形式另一個頁面,如下:
<?php
error_reporting(E_ALL);
if (isset($_SERVER['QUERY_STRING']) && ($_SERVER['QUERY_STRING'] != NULL))
{
$url = 'http://www.example.com/some_page.php';
$qs = htmlentities($_SERVER['QUERY_STRING']);
list($key,$value) = explode("=",$qs);
$arr = array($key => $value);
$options = array(
'http'=>array(
'method'=>"POST",
'header'=>
"Accept-language: en\r\n".
"Content-type: application/x-www-form-urlencoded\r\n",
'content'=>http_build_query($arr)
));
$context = stream_context_create($options);
$fp=fopen($url,'rb',false,$context);
fpassthru($fp);
fclose($fp);
exit;
}
?>
在所需的網址,你只需要添加一個腳本,顯示內容,如:
<?php
var_dump($_POST['answer']);
[如何將JavaScript變量傳遞給PHP?](http:// stackoverflow。COM /問題/ 1917576 /如何對通過JavaScript的變量到PHP) – 4castle