2016-11-26 165 views
-2

今天我來找你這個問題,因爲我一直在不懈地尋求解決這個問題,但沒有效果。從我讀過的其他主題可能是Web主機上的權限問題,但我實際上已經在幾個不同的Web主機上嘗試了相同的代碼,並在每個主機上都得到相同的錯誤, 「403權限被拒絕」PHP/MySQL 403權限被拒絕

注意:我爲主機上的所有文件設置了文件權限爲「755」,我也測試了dbcon.php文件,它工作正常。

所引發錯誤的代碼如下

<?php 
 

 
session_start(); 
 

 
require_once("dbcon.php"); 
 

 
if (checkVar($_SESSION['userid'])){ 
 
    
 
    $getRooms = "SELECT * 
 
    \t \t \t FROM chat_rooms"; 
 
    $roomResults = mysql_query($getRooms); 
 
} \t \t 
 

 
?> 
 

 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
 
<html xmlns="http://www.w3.org/1999/xhtml"> 
 

 
<head> 
 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
 

 
<title>Chat Rooms</title> 
 

 
<link rel="stylesheet" type="text/css" href="main.css"/> 
 
</head> 
 

 
<body> 
 

 
<div id="page-wrap"> 
 

 
\t <div id="header"> 
 
\t 
 
    \t <h1><a href="/examples/Chat2/">Chat v2</a></h1> 
 
    \t 
 
    \t <div id="you"><span>Logged in as:</span> <?php echo $_SESSION['userid'] ?> (<a href="logout.php">Logout</a>)</div> 
 
    \t 
 
    </div> 
 
    
 
\t <div id="section"> 
 
\t 
 
     <div id="rooms"> 
 
     \t <h3>Rooms</h3> 
 
      <ul> 
 
       <?php 
 
        while($rooms = mysql_fetch_array($roomResults)): 
 
         $room = $rooms['name']; 
 
         $query = mysql_query("SELECT * FROM `chat_rooms` WHERE `name` = '$room' ") or die("Cannot find data". mysql_error()); 
 
         $numOfUsers = $rooms['user_count']; 
 
\t \t \t \t \t \t // $numOfUsers = mysql_num_rows($query); 
 
       ?> 
 
       <li> 
 
        <a href="room/?name=<?php echo $rooms['name']?>"><?php echo $rooms['name'] . "<span>Users chatting: <strong>" . $numOfUsers . "</strong></span>" ?></a> 
 
       </li> 
 
\t \t \t \t <?php 
 
\t \t \t \t endwhile; 
 
\t \t \t \t ?> 
 
      </ul> 
 
     </div> 
 
    </div> 
 
    
 
</div> 
 

 
</body> 
 

 
</html>

+0

403可以來自任何地方..在'php'端引起403的東西或..它可能是'.htaccess'解釋你的項目結構和相關的'.htaccess'可能會給想要幫助的人提供線索。 –

+0

檢查網絡服務器日誌文件 –

+0

據我所知,我沒有一個.htaccess文件。正如我上面所說,這也發生在多個主機上。 – Koak

回答

0

你缺少你while循環的一個重要組成部分,它是封閉部分:endwhile;

雖然使用替代的語法是好的,我會建議堅持使用大括號括號的傳統方式{ }

因爲我無法做進一步的測試,您可能會發現更多的錯誤。但對於初學者,您需要修復缺失的endwhile;或用開合花括號替換它{ }