Página 1 de 1
Criar tarefa CRON para executar uma rota admin (RESOLVIDO)
Enviado: 25 Abr 2016, 09:21
por Rejota
Olá amigos do opencart Brasil!
Estou precisando de uma ajuda, preciso executar uma rota no administrativo de uma loja opencart, porém a execução tem que ser realizada automaticamente. Agendar a tarefa CRON sem problemas, a questão é por a rota ser admin não consigo executá-la sem estar conectado ao administrativo.
Se algum colega tiver uma solução, por favor me ajudem!
Obrigado e fico no aguardo.
Re: Criar tarefa CRON para executar uma rota admin
Enviado: 25 Abr 2016, 12:03
por valdeir2000
Tem uma coisa que não é muito seguro de fazer, mas é uma alternativa.
Código: Selecionar todosif ((isset($request->get['token'])) && $request->get['token'] == 'f11a2bde7bdec935c9938799410be638') {
$session->data['user_id'] = 1;
$session->data['token'] = 'f11a2bde7bdec935c9938799410be638';
}
Colocando o código acima no index.php do admin, é possível acessar:
http://www.MINHA-LOJA.com.br/admin/inde ... 99410be638
Mas como foi supracitado, não é o melhor método.
O melhor método é criar uma rota no "catalog", fazer uma autenticação via "Basic Access Authentication"e executar a tarefa.
Ps.: O código utilizado para criar o hash acima foi
Código: Selecionar todos<?php echo md5(password_hash('Hello World', PASSWORD_BCRYPT)); ?>
Re: Criar tarefa CRON para executar uma rota admin
Enviado: 25 Abr 2016, 16:38
por Rejota
Desde já agradeço sua ajuda.
Vou testar o primeiro modo que me passou e também a opção mais segura, posto aqui os resultados.
Obrigado
Re: Criar tarefa CRON para executar uma rota admin
Enviado: 26 Abr 2016, 09:04
por Rejota
Olá valdeir2000, fiz conforme me indicou porém agora quando executo a rota na 1ª vez não tenho acesso, somente quando executo a rota novamente, isto no CRON é um problema pois a tarefa não pode ser executada - não consegue entrar no adm. Estou tentando uma alternativa para logar no 1º acesso, mas se tiver alguma ideia por favor me ajude

.
Obrigado pela força!
Re: Criar tarefa CRON para executar uma rota admin
Enviado: 26 Abr 2016, 13:36
por valdeir2000
Isso acontece pois você não colocou no lugar correto, procure por $session = new Session; e adicione o código na linha seguinte.
Na versão 2.2.x basta colocar depois da linha $session->start(); no arquivo system/framework.php
Re: Criar tarefa CRON para executar uma rota admin
Enviado: 26 Abr 2016, 17:49
por Rejota
Agora sim! funcionou de prima.
Obrigado valdeir2000.