PHP頁面間參數傳遞的四種方法詳解


   我們定義page01.php和page02.php兩個php文件,將page01中的內容想辦法傳遞到page02,然後供我們繼續使用。


--------------------------------------------------------------------------------


第一種:

   使用客戶端瀏覽器的cookie。cookie很容易理解,就是一個臨時文件,可以把它看成一個儲藏室,瀏覽器在瀏覽的過程中記錄一些信息,就暫時存放在這裏。


在page01中設置一個cookie。
<?php
    setcookie('mycookie','自靈');
?>

就是這麼簡單,我們已經創建cookie完畢。
我們定義了一個變量mycookie,它的值是字符串'自靈'。

我們可以隨便給cookie變量起名字,可以定義多個cookie變量。


在page02頁面接受cookie。
<?php
    $wuziling = $_COOKIE['mycookie'];
    echo $wuziling;
?>

我們使用$_COOKIE[]提取cookie中的變量mycookie,將它的值付給$wuziling。然後簡單的輸出。

好了,到這裏使用cookie從頁面之間傳遞參數完畢。


--------------------------------------------------------------------------------


第二種:

   使用服務器端的session。理解session是一件很容易的事情。與cookie的不同在於它是服務器端的臨時儲藏室。session常被稱作會話。


在page01中設置一個session。
<?php
    session_start();
    $_SESSION["temp"]=array('123','456','789');
?>

要想使用session,必須啓動session。session_start();就是啓動session的方法。一般要寫在最前面。

第二個語句我定義了一個$_SESSION["temp"]數組,數組的名稱是$_SESSION["temp"],裏面存儲了3個字符串。


在page02頁面接受session。
<?php
    session_start();
    for($i=0;$i<3;$i++)
    {
        echo $_SESSION['temp'][$i].'<br />';
    }
?>

首先啓動會話。啓動後我們在page01定義的變量已經可以使用了,不需要其他任何獲取的操作,這裏不同於cookie。
下面我們使用for循環將其內容輸出。
【不要以爲$_SESSION['temp'][$i]是一個二維數組,它是個一維數組,數組的名稱是$_SESSION["temp"],雖然這個名稱比較繁瑣,數組的下標是'temp'】
【我們在寫$_SESSION["temp"]時,temp加雙引號或者單引號都是等價的。】

【這裏我們定義會話變量時定義的是數組,也可以定義普通變量,就像cookie裏面講到的】


--------------------------------------------------------------------------------


第三種:

使用表單來傳遞。


page01.php這樣寫:

<form action="page02.php" method="post">
    <input type="text" name="wuziling" />
    <input type="submit" name="submit" value="提交" />
</form>

表單內的屬性action直接指定此表單內容傳遞到哪個頁面。method指明瞭傳遞的方式。post代表使用消息傳遞,就像我們發短信一樣。


page02.php這樣寫:

<?php
    $wu = $_POST['wuziling'];
    echo $wu;
?>

用$_POST[ ]獲取傳遞過來的變量值。這個變量名wuziling在表單的input標籤的name屬性裏定義。
然後將其傳遞給另外一個變量$wu。這樣我們就可以輸出了。直接輸出也是可以的,echo   $_POST['wuziling'];
【如果哪裏不明白,請參考本版塊的另外一個詳細介紹表單提交的帖子】

【method的值也可以是get】


--------------------------------------------------------------------------------


第四種:

使用超鏈接傳遞參數。我們上網的很多操作都是點擊超鏈接在網頁之間跳來跳去。點的同時同樣可以傳遞參數。


page01.php這樣寫:
<?php
    $var = 'I love you !';
?>
<a href="<?php echo "page02.php?new=".$var ?>">get</a>

定義一個變量$var。

超鏈接a的href屬性裏寫明要跳轉到page02頁面。後面加一個問號,一個自己定義的變量new【此名稱在page02頁面要使用】,new的值就是我們想傳遞的$var。


page02.php這樣寫:
<?php
    echo $_GET['new'];
?>

使用$_GET[ ]獲取new的值,然後就可以輸出或做其他用途。

這時的瀏覽器地址欄可以直接看到new變量和它的值。


*說明:本文轉載於http://www.jb51.net/article/38251.htm

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章