2017-04-26 26 views
1

我在cookie中有一個加密的鏈接,其中包含一個剪貼者的電子郵件和密碼。 當我去這個頁面時,電子郵件和密碼被描述(所有這些工作正常)。prestashop中的程序登錄

我發現一個線程告訴我要將POST方法中的3個參數傳遞給某個url: email,passwd,submitLogin。 引用的話題 - >PrestaShop - Login programmatically

我沒有其他的choise然後用ajax post方法,像這樣做此登錄:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script> 
<meta name="_csrf" content="${_csrf.token}"/> 
<meta name="_csrf_header" content="${_csrf.headerName}"/> 

<?php 

function base64_url_decode($input) { 
    return base64_decode(strtr($input, '-_,', '+/=')); 
} 

$email = base64_url_decode($_GET['id']); 
$password = base64_url_decode($_GET['pwd']); 

?> 

<script> 
    $(document).ready(function() { 
     $.post('index.php?controller=authentication', { back: 'my-account', email: '<?php echo $email ?>', passwd : '<?php echo $password ?>', SubmitLogin: 1}, 
      function(returnedData){ 
       console.log(returnedData); 
      }).fail(function(){ 
      console.log("error"); 
     }); 
    }); 
</script> 

然而,AJAX的響應對應到登錄頁面並沒有特別的消息。

有人會知道爲什麼它不會登錄我們嗎?

+0

你檢查了郵件中發送的電子郵件和密碼的值嗎? – sadlyblue

+0

我剛纔發現這個問題。我會稍微製作並接受我的夸克。 儘管我感謝你的時間和興趣。謝謝。 – lolplayer101

回答

1

我找到了解決我的問題。

以前的線程我得到了awnser是正確的,但僅用於他們版本的prestashop(v1.5),而我一直在使用v1.7(最新版本)。

的差別是後變量控制器驗證的nameage: V1.5:

  • 電子郵件
  • passwd文件
  • SubmitLogin

而在V1.7這些應該改爲:

  • 電子郵件
  • 密碼
  • submitLogin

所以改變後的值的名字爲我做。 我仍然有問題,它在我的ajax文章上返回失敗,但它奇怪地工作正常。

我感謝大家花時間閱讀我的文章。