2016-09-28 47 views
-1

我爲我工作的公司編寫了一個內部信使系統,我試圖通過爲此設置一個管理面板讓事情變得更簡單,以便它可以控制用戶名,密碼和組。來自URL的PHP​​陣列選擇

基本上我試圖從使用url ?user=username的陣列中選擇一個用戶,然後它將返回用戶信息並允許它被更改。我遇到的問題是讓url選擇數組中的用戶名。

數組是基本的:

$users = array(
    '0' => array(
     'username' => 'test', 
     'password' => 'test123', 
     'group' => 'office', 
    ), 

回答

0

喜歡這個?:

<?php 

// get username from URL (GET METHOD) 
$username=$_GET["username"]; 

// $users has all the info 

foreach ($users as $u) { 
    // find the target user 
    if ($u["username"] == $username) { 
     // do something with $u 
     var_dump($u); 
    } 
} 

?> 
+0

是的,謝謝。我想我可以做同樣的密碼和組? – LSmithx2

+0

是的,在此代碼中,$ u包含有關用戶的所有信息。 (覈實)。 $ u [「password」]有密碼,$ u [「group」]有組。 – verjas

+0

好的,謝謝你= D @verjas,我只需要找到一種方法,讓它可以在不改變任何其他信息的情況下更改信息。 – LSmithx2

0

你有沒有試過這樣做:

$user_name = $users[0]["username"]; 
0

因爲它是一個數組我假設你有多個索引。我想一個簡單的'查找'功能可能會起作用。

function findUser($searchData, $users, $searchField) { 
    $retObj = array(); 
    foreach ($users as $user) { 
     if (isset($user[$searchField]) && $user[$searchField] == $searchData) { 
      $retObj['username'] = $user['username']; 
      $retObj['password'] = $user['password']; 
      $retObj['group'] = $user['group']; 
      break; 
     } 
    } 
    return $retObj; 
} 

編輯:添加searchField所以你可以做同樣的密碼和組。 Searchdata爲u正在尋找

0

試試這個值(未測試)

$u = null; 
foreach($user as $user) { 
    if(isset($_GET['user']) && $user['username'] == $_GET['user']) { 
     $u = $user; 
    } 
} 

$ U變量應該包含你的用戶記錄。