2012-12-03 60 views
1

只有在$_SESSION['user']等於說變量爲$admins(我想在幾個用戶中存儲幾個值)時,我想在菜單上顯示管理按鈕。PHP在一個變量中存儲幾個用戶

我知道我可以通過SQL做到這一點,但我想知道這是否通過PHP如果又如何是可能的。

編輯:更具體的我知道我可以通過查找admin組相匹配的用戶數據庫做,但我沒有這種設置。

即使SQL是最簡單的選項,我真的希望有一個與PHP,我正在閱讀有關PHP_AUTH_USER了不少辦法,但我想給多個用戶存儲在一個變量,如果這是可能的嗎?

回答

2
$admins = array("username1","username2","username3"); 
session_start(); 

if(in_array($_SESSION["user"],$admins)) 
{ 
    //do stuff 
} 

乾杯!

+0

這只是伎倆,謝謝我會試試! – user1868565

+0

OP的要求究竟是什麼,儘管我認爲它應該詳細闡述,因爲很明顯他對語言沒有很好的把握,所以理解爲什麼數組以及它的實際是至關重要的。 –

+0

現在它返回語法錯誤:P在你的if語句中。這是說意想不到的'['也許有逃避角色的東西?我不確定。 – user1868565

0

這聽起來像你問什麼替代地方是存儲用戶的列表,以及他們擁有哪些權限(管理或不管理)。

你可以:(!很容易) *硬編碼在PHP文件 *把它放在一個配置文件(INI,XML,你的名字)

無論..你需要把這個清單'某處'。它不會留在PHP內存中,所以這個地方需要成爲PHP可以加載它的地方。

你不能只是把一個變量(如$ _SESSION),並希望呆在那裏。所以隨着數據庫(的確是一個合乎邏輯的選擇)與其他兩個是你的選擇。

+0

是的,我知道。用戶在登錄後將被存儲在具有start_session()的文件中,並且此PHP文件始終包含在所有頁面中。 – user1868565

0

你在找什麼是一個數據結構,稱爲array。你可以在這裏找到更多:http://php.net/manual/en/language.types.array.php

關鍵是它的結構是key => value對。您應該深入瞭解這一點,因爲作爲數據類型,數組允許您實現許多功能,例如looping through data,輕鬆爲數據提供searchingsorting等等。

這是一個幾乎適用於任何類型的編程語言的基本概念,所以請幫忙!

+0

謝謝,我一定會閱讀這個。 – user1868565

+0

毫無疑問,會產生許多好的結果。祝你好運學習! –

相關問題