RafaelBotelho Posted September 6, 2016 Share Posted September 6, 2016 Boa tarde pessoal. Estou migrando do WordPress para a PrestaShop, na minha plataforma do WP eu tenho 2mil clientes cadastrados e já importei os dados para a minha base da PrestaShop. Só que o problema é o seguinte, a senha é criptografada obviamente e não consigo fazer o usuário logar na loja da PS porque a senha está incorreta. Aqui está o meu INSERT de acordo com o que pesquisei no fórum da prestashop: Utilizando o MD5 na coluna passwd. INSERT INTO `ps_customer` (id_customer, passwd, firstname, email, date_add, secure_key, active, lastname) SELECT id_customer, MD5(passwd), firstname, email, date_add, secure_key, active, lastname FROM `ps_customer_teste`; Não sei exatamente como se usa o MD5, mas pelo que percebi a criptografia do WordPress é diferente da PrestaShop. Como posso fazer funcionar a minha senha cadastrada no WordPress, inserindo ela na tabela ps_customer da PrestaShop? Agradeço a atenção! Link to comment Share on other sites More sharing options...
Daniel - PrestaBR Posted September 6, 2016 Share Posted September 6, 2016 A senha no PrestaShop também é criptografada com: md5(COOKIE_KEYsenha) A hash _COOKIE_KEY_ vc encontra no seu arquivo /config/settings.inc.php. Se você souber como extrair a senha do Wordpress (descriptografada), pode criar uma função para importar as senhas novamente no PrestaShop, que elas vão funcionar. Link to comment Share on other sites More sharing options...
RafaelBotelho Posted September 6, 2016 Author Share Posted September 6, 2016 Eu tenho essa formatação de senha: PrestaShop - 61c8ff6bb68240cbff1b87a652f99dc4 WordPress - $P$BInzo0A3NI30Tc1mfuJYEylzPUxJYD1 Então quer dizer que quando uso o MD5 ele criptografa a minha senha do WordPress que já está criptografada? Se for isso, existe alguma outra forma de solucionar esse problema? Já acessei o arquivo settings.inc.php e o FrontController.php que me mostra isso: md5(_COOKIE_KEY_.'recover_cart_'.$id_cart) $customer->logged = 1; $this->context->customer = $customer; $this->context->cookie->id_customer = (int)$customer->id; $this->context->cookie->customer_lastname = $customer->lastname; $this->context->cookie->customer_firstname = $customer->firstname; $this->context->cookie->logged = 1; $this->context->cookie->check_cgv = 1; $this->context->cookie->is_guest = $customer->isGuest(); $this->context->cookie->passwd = $customer->passwd; $this->context->cookie->email = $customer->email; Não consigo fazer nenhuma alteração pra senha funcionar como vem do WordPress? Link to comment Share on other sites More sharing options...
Daniel - PrestaBR Posted September 7, 2016 Share Posted September 7, 2016 Acho que não ficou muito claro na mensagem inicial... Se você souber como extrair a senha do Wordpress (descriptografada), pode criar uma função para importar as senhas novamente no PrestaShop, que elas vão funcionar. Caso não saiba, recomendo que procure um módulo ou serviço de migração de banco de dados entre plataformas, como o Cart2Cart. Link to comment Share on other sites More sharing options...
RafaelBotelho Posted September 7, 2016 Author Share Posted September 7, 2016 Daniel fiz a migração dos clientes pelo Cart2cart e deu o mesmo problema na senha. Eu realmente não sei como descriptografar a senha do Wordpress e nem sei se isso é possível. Toda vez que insiro o comando MD5(passwd) o que acontece a meu ver é uma criptografia da criptografia e não o contrário, já tentei com SHA1 e também dá a mesma coisa. Já pedi ajuda pra várias pessoas e inclusive no Wordpress e ninguém consegue solucionar esse problema pra mim. Será que é tão complicado assim fazer um simples Insert de dados onde existe uma coluna com senha? Não consigo encontrar nenhuma solução na internet, tá muito difícil de solucionar isso. Peço por gentileza que você possa me ajudar a resolver isso. Não sei mais o que fazer, são muitos clientes que posso perder. Link to comment Share on other sites More sharing options...
selectshop.at Posted September 8, 2016 Share Posted September 8, 2016 Na verdade o seu problema está situado na criptografia do WordPress. O que o Daniel quis dizer é que uma vez descriptografada a senha do WP, vc. pode importar o texto plano (descriptografado), que este será criptografado para o Prestashop, mas para isto o texto deve estar plano. Um modo direto (md5) para o Prestashop nao é possível. Quanto à descriptografia da senha WP: veja se te ajuda o link abaixo. WP trabalha com header + salt + sha para criptografar a senha. http://stackoverflow.com/questions/173329/how-to-decrypt-a-password-from-sql-server Eu ainda nao tentei, mas nao creio que seja possível decriptar a senha do WP, mais fácil é substituí-la com phpmYadmin diretamente no banco de dados em questao. Porque vc. nao deixa este campo vazio ? Todos os clientes que já possuíam password no WP vao receber, por ser a primeira vez que eles se logam no Prestashop, a página de erro: password nao reconhecido, por favor crie um novo. Nao vejo problema nenhum neste procedimento, já que muitos no net recriam passwords de tempo em tempo para os seus clientes. Isto aliás mostra que o administrador da página constantemente trabalha na protecao da sua página e clientes. isto cria confianca no ver dos seus clientes Além do mais vc. pode colocar um aviso no template de registro para que criem passwords novos, ou um pop-up. Link to comment Share on other sites More sharing options...
RafaelBotelho Posted September 8, 2016 Author Share Posted September 8, 2016 Obrigado pelas respostas, mas no fim das contas acabou não funcionando. Mesmo eu inserindo um valor de senha fixo ele não valida o token do arquivo PasswordController.php na recuperação da senha. De qualquer forma, não tenho mais o que tentar para resolver isso. Valeu! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now