新聞中心
PHP中如何將變量傳到另一個PHP網(wǎng)頁中,詳情進來看下。
一、用form表單中的hidden隱藏域。這種方法就是把待傳遞的變量用表單的方式再次傳送,比如在用戶登陸后,把他的信息如$username、$id等等信息用表單發(fā)送到下一張網(wǎng)頁,當然,很多情況,是諸如text、option等等框體不想再被看到的話,可以采用隱藏的輸入域。下面是一個實例,假設$username是經(jīng)過上頁為驗證身份發(fā)送到本頁并且在本頁經(jīng)過驗證的變量,想傳遞到下一頁中去,那么可以建立文件test4.PHP:
我們提供的服務有:網(wǎng)站設計、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、博野ssl等。為上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術(shù)的博野網(wǎng)站制作公司
?$username="張明";?
form method="post" action="test5.php"
input type="hidden" name="username" value="?echo $username?"
input type="submit" name="submit" value="看看"
/form
test5.php:
?echo "你好,$username,歡迎光臨php自學網(wǎng)!";?
打開apache服務器,輸入在頁面的按鈕上點擊,會發(fā)現(xiàn)新出的網(wǎng)頁上$username的值已經(jīng)傳送過來了。
當然這種方法的弱點是很明顯的,它還要再使用一個表單,而且在test5.php的網(wǎng)頁上想要刷新的話還要重新發(fā)送,這顯然是不太友好的。
二、使用session。后來,我查找了一些關于session的文章,覺得這時傳遞變量的一種非常好的方法。下面通過舉例子來說明:
建立一個新文件test6.php:
?session_start(); //初始化一個session
session_register("username"); //注冊一個session變量
$username="張明"; //要傳遞的變量值
echo "a href=test7.php去看看/a";
?
test7.php:
?session_start(); //初始化一個session
echo "你好,$username,歡迎光臨php自學網(wǎng)!";? //顯示傳遞過來的變量
使用這種方法的時候要注意:?session_start();?應該放在文件的最前面,即"?"前面不應有任何內(nèi)容,包括空格,這是我調(diào)試多次未成功找出的原因。
這個變量只能在當前打開的瀏覽器中傳遞,若要在新打開的窗口中也能傳遞,剛要按下面的方法來做:
文件:test8.php
?session_start();
session_register("username");
$username="張明";
echo "a href=test7.php?$a=".session_id()." target=_blank去看看/a"; //將當前的session的id值傳給下一個窗口。
?
test7.php
?session_start();
echo "你好,$username,歡迎你的光臨!";?
三,通過cookie
建立文件test9.php
?SetCookie("username","張明");//把username設置到cookie中去
echo "a href=test5.php target=_blank去看看/a";?
文件test5.php
建立test5.php:
?echo "你好,$username,歡迎你的光臨php自學網(wǎng)!";?
總結(jié):以上只是一些常用的方法,還有很多的方法,如可以使用數(shù)據(jù)庫,memcache等等.在此不做過多介紹.
在PHP中如何將值從一個頁面?zhèn)鞯搅硗庖粋€頁面?如圖
1:表單提交,在表單中輸入留言,然后提交表單到后臺PHP;
2:PHP接收表單數(shù)據(jù),然后處理數(shù)據(jù):一般做存表操作;
3:在另外一個頁面顯示:訪問另外一個頁面,PHP讀取表中存儲的數(shù)據(jù),顯示給用戶
數(shù)據(jù)怎么返回給原頁面(PHP)?
你大概要先搞清楚 頁面(前端) 和 PHP(后端) 的關系;
第一個頁面 由 A.php完成, 提交后 輸入的內(nèi)容 交給B.php 由B.php 生成第二個頁面。
這個時候 A.php已經(jīng)不起作用了。 A.PHP 提交的內(nèi)容在服務器端的 全局變量$_POST['name']里面(name 就是A.PHP中TEXTAREA 標簽的name 屬性值)。
注意 : 第一個頁面不存在了,要想顯示第一個頁面的內(nèi)容,就在B.php.中把第一個頁面復制一遍。把重新建立一個textarea 標簽 默認值是你要顯示的值,
PHP中一個頁面的數(shù)組如何傳遞到另一個頁面?
可以用session和表單兩種方式都是先將數(shù)組序列化,然后取出后返序列化
1.session方式
?php
session_start();
$arr = array(1,2,3,4,5,6);
$arrse = serialize($arr);
$_SESSION['sessarr'] = $arrse;//序列化,對象或者數(shù)組都可以這樣存放到session中
//如果你想使用session數(shù)據(jù)返回數(shù)組的話
$arr = unserialize($_SESSION['sessarr']);//反序列化
echo $_SESSION['sessarr'];
echo "br";
print_r($arr);
?
2.表單方式
form method="POST" action="1.php"
input type="hidden" name="post_data" value="?=base64_encode(serialize($arr))?" /
/form
1.php
?
print_r(base64_encode(unserialize($_POST['post_data'])));
?
php 將從數(shù)據(jù)庫中得到的值傳到另一個頁面
可以這樣:
你要在form /form標簽里加個隱藏的表單,如這樣:
table width="531"
tr
th width="50"姓名:/th
th width="144"?php echo $row["name"]?input type="hidden" name="realname" value="?=$row["name"]?" //th!--每個里面加上這上一個隱藏的表單,這樣你提交之后就可以在另外一個頁面獲取值了--
th width="53"性別:/th
th width="90"?php echo $row["sex"]?/th
th width="46"年齡:/th
th width="120"?php echo $row["age"]?/th
/tr
/table
input name="updata" type="submit" value="修改" /
/form
在另外一個頁面這樣獲取值:
$name=$_POST['realname']; //這樣在test.php頁面就取到人名的值了
其他值同理
名稱欄目:php怎么把數(shù)據(jù)傳到頁面 php怎么把數(shù)據(jù)傳到頁面上
文章源于:http://www.dlmjj.cn/article/docdpsj.html