За последние 24 часа нас посетили 20688 программистов и 1007 роботов. Сейчас ищет 371 программист ...

Переход между страницами форм с 2 капчами

Тема в разделе "Сделайте за меня", создана пользователем noice, 4 окт 2021.

  1. noice

    noice Активный пользователь

    С нами с:
    7 сен 2012
    Сообщения:
    157
    Симпатии:
    0
    Проблема:
    После регистрации function actionReg происходит авто вход actionLogin. Но в обоих функциях капча прописана изза этого автовход не работает.
    Как исправить? Как пропустить проверку капчи авторизации после регистрации

    страница авторизации

    PHP:
    1. public function actionLogin()
    2.   {
    3.  
    4.   $view = $this->getView('login.php');
    5.   $this->carcase->import('content', $view);
    6.  
    7.   $socialAuthConfig = new Config('social-auth');
    8.   $view->socialAuthInfo = $socialAuthConfig;
    9.   if (Tools::rGET('back')) $view->back = Tools::rGET('back');
    10.   $view->error = '';
    11.    
    12.  
    13.   //if (Tools::rPOST('username') && Tools::rPOST('pass') && (!empty(Tools::rPOST('g-recaptcha-response')))) {
    14.        if (Tools::rPOST('username') && Tools::rPOST('pass') ) {
    15. ////////////////////////  капча начало
    16. if (empty($out->success)) {
    17. $error = true;
    18. $secret = '6LfYdaYcAAAAAB9LtR7ZlDlYQL9oebQ-UtfNIsJm';////////////////////////капча        
    19.          $curl = curl_init('https://www.google.com/recaptcha/api/siteverify');
    20.    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    21.    curl_setopt($curl, CURLOPT_POST, true);
    22.    curl_setopt($curl, CURLOPT_POSTFIELDS, 'secret=' . $secret . '&response=' . Tools::rPOST('g-recaptcha-response'));
    23.    $out = curl_exec($curl);
    24.    curl_close($curl);
    25.    $out = json_decode($out);
    26. }
    27.        ////////////////////////капча почти конец
    28.   $user = new Client();
    29.   $row  = $user->where('username', Tools::rPOST('username'))->getRow();
    30.   if ($row && $row->password == Tools::passCrypt(Tools::rPOST('pass'))&& ($out->success == true)) { ////капча
    31.      
    32.        

    Страница регистрации
    PHP:
    1.   public function actionReg()
    2.   {
    3.   $view  = $this->getView('reg.php');
    4.   $this->carcase->import('content', $view);
    5.  
    6.   $socialAuthConfig = new Config('social-auth');
    7.   $view->socialAuthInfo = $socialAuthConfig;
    8.  
    9.   $view->error = '';
    10.   if (Router::getParam('id_ref')) {
    11.   setcookie('ref', Router::getParam('id_ref'), time() + 600000, '/');
    12.   }
    13.   if (Tools::rPOST()) {
    14.   //  $recaptcha_verifed = true;
    15.   //  if ($this->config->enabled_captcha) {
    16.  
    17. $secret = '6LfYdaYcAAAAAB9LtR7ZlDlYQL9oebQ-UtfNIsJm';////////////////////////капча
    18.   //  $recaptcha_verifed = false;
    19.  
    20.    $curl = curl_init('https://www.google.com/recaptcha/api/siteverify');
    21.    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    22.    curl_setopt($curl, CURLOPT_POST, true);
    23.    curl_setopt($curl, CURLOPT_POSTFIELDS, 'secret=' . $secret . '&response=' . Tools::rPOST('g-recaptcha-response'));
    24.    $out = curl_exec($curl);
    25.    curl_close($curl);
    26.    $out = json_decode($out);
    27.  
    28.    ....
    29.  
    30.     if ($user->save()) {
    31.   Notifier::NewRegistration($user, Tools::rPOST('pass'));
    32.   $this->actionLogin();
    33.   }
    34.          
     
    #1 noice, 4 окт 2021
    Последнее редактирование: 4 окт 2021
  2. noice

    noice Активный пользователь

    С нами с:
    7 сен 2012
    Сообщения:
    157
    Симпатии:
    0
    решено