2012-03-13 5 views
0
http://dev."xxxxxyyyyy".com/xxxxx-community/register.html?&invite=5000 

Мне нужно хранить этот идентификатор ($ пригласите = 5000) в переменной $ fromid с использованием session.There являются две функции в /components/com_community/controllers/register.phpКак использовать сеансы

Где я должен это назвать и как?

class CommunityRegisterController extends CommunityBaseController 
{ 
    public function register() 
{ 

} 

еще один

public function register_save() 
{ 
    $mainframe =& JFactory::getApplication(); 
    $modelRegister  = CFactory::getModel('register'); 

    // Check for request forgeries 
    $mySess  =& JFactory::getSession(); 

    if(! $mySess->has('JS_REG_TOKEN')) 
    { 
     echo '<div class="error-box">' . JText::_('COM_COMMUNITY_INVALID_SESSION') . '</div>'; 
     return;  
    } 

    $token  = $mySess->get('JS_REG_TOKEN',''); 
    $ipAddress = isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']; 
    $authKey = $modelRegister->getAssignedAuthKey($token, $ipAddress); 
    $formToken = JRequest::getVar('authkey', '', 'REQUEST'); 

    if(empty($formToken) || empty($authKey) || ($formToken != $authKey)) 
    { 
     //echo $formToken .'|'. $authKey; 
     echo '<div class="error-box">' . JText::_('COM_COMMUNITY_INVALID_TOKEN') . '</div>'; 
     return; 
    } 

    //update the auth key life span to another 180 sec. 
    $modelRegister->updateAuthKey ($token, $authKey, $ipAddress); 

    // Get required system objects 
    $config  = CFactory::getConfig(); 
    $post  = JRequest::get('post'); 

    // If user registration is not allowed, show 403 not authorized. 
    $usersConfig = &JComponentHelper::getParams('com_users'); 
    if ($usersConfig->get('allowUserRegistration') == '0')  
    { 
     //show warning message  
     $view =& $this->getView('register'); 
     $view->addWarning(JText::_('COM_COMMUNITY_REGISTRATION_DISABLED')); 
     echo $view->get('register');          
     return; 
    } 

Могу ли я получить доступ, что $ fromid в компоненты/com_users/контроллеры/registration.php, который использует класс

class UsersControllerRegistration extends UsersController 

{ 

} 
+0

http://www.phphelps.com/11_How_to_use_session.shtml –

ответ

0

Вы можете использовать метод GET, чтобы получить значение, затем сохраните его в переменной сеанса, Например:

$_SESSION['fromid'] = $_GET['invite']; 
$fromid = $_SESSION['fromid']; 
+0

register.php - это место, где все данные о пользователе хранятся в таблице. Так что я могу использовать это в компонентах/com_users/controllerlers/registration.php также потому, что это место, где происходит регистрация пользователя. Admin сообщает, следует ли активировать этот конкретный профиль или нет. или я должен хранить его в базе данных. –