2013-02-06 71 views
0

我的鏈接是何許:http://example.com/events.php?slug=xyz無法在PHP註銷頁面重定向

其中發現的[塞]字段從數據庫導入。 我events.php頁面的起始線爲:

$slug = $_GET['slug']; 
$url="events.php?slug=".$slug."/"; 
.... 
.... 

我的註銷功能:

if(isset($_GET['logout'])) 
{ 
    $_SESSION = array(); 
    session_destroy(); 
    header('Location: ' . $url); 
    exit; 
} 


<?php if(isset($_SESSION['id'])){?> 
    <a href="?logout" ><button>Log Out</button></a> 
<?php }?> 

但在點擊logout"http://example.com/events.php?slug=/"顯示。

我的整個php頁面的啓動腳本是:

<?php 
define('INCLUDE_CHECK',true); 

require_once('13/functions/db.php'); 
    $slug = $_GET['slug']; 
    $url="events.php?slug=".$slug."/"; 
    $result = mysql_query("SELECT * FROM event WHERE slug='".$slug."'"); 
    if ($result == true){ 
     $row=mysql_fetch_assoc($result); 
     $id=$row['id']; 
     if($id>=13 && $id<=40 && $id!=17){//some checks. 
      $var=1; 
      $name=$row['name']; 
     } 
     else { 
      $var=0; 
      $name="404"; 
     } 
    } 

session_name('fewiui'); 
session_set_cookie_params(3*7*24*60*60); 
session_start(); 

if(isset($_GET['logout'])) 
{ 
    $_SESSION = array(); 
    session_destroy(); 
    header('Location: ' . $url); 
    exit; 
} 


$sess_uid = $_SESSION['id']; 
$sess_email = $_SESSION['email']; 
$sess_name = $_SESSION['name']; 
if(isset($_POST['submit'])&&$_POST['submit']=='Register') 
    require_once('13/functions/eventlogin.php');  
?> 

其他的一切(如登錄等)的作品。我在哪裏做錯了?我是一個PHP新手。

+0

此行爲的目的是爲您設置變量$ url =「events.php?slug =」。$ slug。「/」;當你註銷你重定向頭('Location:'。$ url);那麼它應該在哪裏重定向呢? – superbly

+0

@superbly:它應該重定向到同一頁面。這可能是'events.php?slug = eventxyz' – xan

+0

的形式,那麼你必須在註銷鏈接中轉發slug值。 $ slug = $ _GET ['slug']; superbly

回答

0
<a href="?slug=<?php echo $slug; ?>&logout" ><button>Log Out</button></a> 
+0

我錯過了'echo'部分.. :( 謝謝。!!! – xan