2014-01-29 164 views

回答

1

其實你是不是送id參數,以此來Page2.php

Page1.php

<?php 
    $id = 1234; 
    header("location:page2.php?id=$id");//Post $id to page2.php 
?> 

Page2.php

<?php 
     echo $user_id=$_GET['id']; //should receive id posted from page1.php 
?> 
+0

感謝,但我可以用'POST '在這裏?怎麼做? – user3245689

+0

我喜歡你的答案,但由於點數太少而不能滿意... – user3245689

+0

@ user3245689,你不能使用'POST '在這裏。請使用'cURL' :) –

0

您可以使用sessions此也,向你展示你的選擇是什麼。

這一方法在POST方法(使用都在同一個文件的形式方法)

表法(page1.php中)

<?php 
session_start(); 
$id = $_SESSION["id"] = $_POST['id']; 

if(isset($_POST["submit"])){ 
echo $id; 
echo "<br>"; 
echo "<a href='page2.php'>Click to see session ID on next page</a>"; 
} 
?> 

<form action="" method="post"> 

Enter ID: 
<input type="text" name="id"> 

<br> 
<input type="submit" name="submit" value="Submit"> 

</form> 

使page2.php

<?php 
session_start(); 
$user_id=$_SESSION["id"]; 
echo $user_id; // will echo 1234 if you entered "1234" in the previous page. 

常規會話方法(page1.php)

<?php 
session_start(); 
$id = $_SESSION["id"] = "1234"; 
echo $id; // will echo 1234 

使page2.php

<?php 
session_start(); 
$user_id=$_SESSION["id"]; 
echo $user_id; // will echo 1234 

腳註:
然後,您可以使用相同的(會話)變量成員的登錄區,數據庫實例。

這是重要保持session_start();包括在使用會話的所有頁面內,並在頂部。

如果您在本一起使用header(),那麼你將需要之前session_start();

否則添加ob_start();(如埃坦在註釋說明)「$_SESSION值將是無法解決的。「

header()例如:

<?php 
ob_start(); 
session_start(); 
$user_id=$_SESSION["id"]; 

    if(isset($_SESSION["id"])){ 
header("Location: members_page.php"); 
    exit; 
} 

    else{ 
header("Location: login_page.php"); 
    exit; 
} 

你也可以更換:if(isset($_SESSION["id"]))if(!empty($_SESSION["id"]))

要實現退出頁面,你就需要使用session_destroy();

+1

好東西不會忘記「session_start();」,否則$ _SESSION值將無法解析。 – Eitan

+0

您提出了一個很好的觀點,我會爲此添加一個註釋,謝謝。 '+ 1'發表評論。 @Eitan –

相關問題