php實作post跳轉的方法:先定義post處理頁面url;然後取得目前頁面的url;接著將querycan參數解析到陣列變數;最後建構表單並跳轉即可。
推薦:《PHP影片教學》
php實作post跳轉
大家否知道php可以利用header('Location')實作get請求跳轉。
php利用curl可以實作模擬post請求。
但卻找不到php現成的實作post跳轉。
那麼問題來了,如果有這個需求該怎麼實現呢?
今天在這裡,利用form js跟大家攢一個php的post跳轉的方法。
index.php(發起跳轉頁面)
<?php //定义post处理页面url $actionUrl = './action.php' ; //获取当前页面的url $url = 'http://' . $_SERVER [ 'HTTP_HOST' ]. $_SERVER [ 'PHP_SELF' ]. '?' . $_SERVER [ 'QUERY_STRING' ]; //解析url $parseInfo = parse_url ( $url ); //获取url中的参数部分 $queryString = $parseInfo [ 'query' ]; //将querycan参数解析到数组变量 $queryArr =[]; parse_str ( $queryString , $queryArr ); //循环拼接表单项 $formItemString = '' ; foreach ( $queryArr as $key => $value ){ $formItemString .= "<input name='{$key}' type='text' value='{$value}'/>" ; } //构造表单并跳转 $content =<<<EOF <form style= 'display:none' name= 'submit_form' id= 'submit_form' action= '{$actionUrl}' method= 'post' > { $formItemString } </form> <script type= "text/javascript" > document.submit_form.submit(); </script> EOF; exit ( $content );
action.php(跳轉目標頁)
<?php //打印post接收到的数据 echo print_r( $_POST ,true);
get存取:
http:/ /yoururl/index.php?name=jack&age=100&sex=boy&no=001
真相在這裡!自動post跳到了目標頁面,並且可以在目標頁裡面取得到post值。
以上是php如何實現post跳轉的詳細內容。更多資訊請關注PHP中文網其他相關文章!