2012-09-18 18 views
0

我有一個代碼,以檢查用戶是否登錄或不 這是代碼 調用userlog.php把支票,如果用戶登錄或不進在PHP中包含文件

<?php 
if (!isset($_SESSION['idx'])) { 
if (!isset($_COOKIE['idCookie'])) { 
$logOptions = '<a href="register.php">Register Account</a> 
&nbsp;&nbsp; | &nbsp;&nbsp; 
<a href="login.php">Log In</a>'; 
echo $logOptions; 
} 
} 
else{//do something } 

如果我將這段代碼包含在所有文件中,此代碼正常工作。 當我把文件放入一個單獨的文件並將其包含到所有文件中時,它不能正確執行。 的其他條件是所有的文件不同,所以我如果我開始else塊中包括文件本身然後當我結束在這個文件(調用的index.php)else塊再有就是錯誤

syntax error, unexpected '}' in index.php on line 43 

,當我把其他的index.php文件,如果模塊在userlog.php則出現下列錯誤

syntax error, unexpected T_ELSE in index.php on line 9 

那麼,如何可以使用包括管理這種情況。

回答

1

你只是錯過了正確的打開和關閉大括號。在代碼中,你給出的其他塊不是eding。你已經註釋掉了部分代碼。我引用這條線

else{//do something } 

創造適當的if-else塊,包括,應該解決這個錯誤。

在一個IDE像Eclipse你可以使用按Ctrl + Alt鍵+P驗證快速跳轉到匹配的括號。

1

inc.php

<?php 
$loggedIn = FALSE; 

if (!isset($_SESSION['idx'])) { 
    if (!isset($_COOKIE['idCookie'])) { 
     $logOptions = '<a href="register.php">Register Account</a> 
     &nbsp;&nbsp; | &nbsp;&nbsp; 
     <a href="login.php">Log In</a>'; 
     echo $logOptions; 
    } 
} else { 
    $loggedIn = TRUE; 
} 
?> 

的index.php

<?php 
require_once('inc.php'); 

if ($loggedIn == TRUE) { 
    // do your stuff 
} 
?> 
+0

應該這樣做肯定。現在試試這個 –

相關問題