2012-10-23 69 views
0

在用戶區域有一個用戶信息(Web應用程序使用Zend Framework + Jquery)。 當我以USER_1的身份登錄時,我可以編輯USER_1的信息,但當我在新瀏覽器的窗口中以USER_1的身份登錄並以USER_2身份登錄,然後返回到已打開USER_1信息的窗口時,我可以編輯USER_1信息,但以USER_2記錄。如何檢查經過認證的用戶(Zend FW)在某些JQuery功能中授權?

編輯按鈕代碼鑑於:

showBody = function(id) { 
    if(active_id == id){ 
    $("#user-body-" + active_id).slideUp(250); 
    active_id = 0; 
    $("#switchbutton" + id).text("EDIT USER"); 
    return; 
    } 
    if(active_id == 0) $("#user-body-" + id).slideDown(300); 
    else { 
    $("#user-body-" + active_id).slideUp(250, function() { 
     $("#user-body-" + id).slideDown(300); 
    }); 
    } 
    $("#switchbutton" + active_id).text("EDIT USER"); 
    $("#switchbutton" + id).text("CANCEL"); 
    active_id = id; 
}; 

用戶身體是形式文本字段編輯

:在單獨的js文件

<div class="editbutton" id="switchbutton<?php echo $user['id']; ?>" onclick="showBody(<?php echo $user['id']; ?>)">EDIT USER</div> 

showBody功能

怎樣才能從showBody函數當前已認證的用戶與active_id進行比較,如果相同,則在未重定向到某個索引/操作時傳遞該操作?

+0

如果您可以修改用戶2的信息,而登錄的用戶1,那麼除了客戶端檢查你是問關於你需要做服務器端保存時用戶的詳細信息以確保當前登錄的用戶可以編輯正在保存的用戶。 –

回答

1

您可以隨時使用Zend_Auth的

// Get Zend_Auth instance 
    $auth = Zend_Auth::getInstance(); 

    // Has user been authenticated 
    if($auth->hasIdentity()) 
    { 
     // If so, set user identity 
     $this->view->identity = $auth->getIdentity(); 

     switch($this->view->identity->id) 
     { 
     case 1: 
     $this->view->headScript()->appendFile(somefile.js');     
     } 
相關問題