Prueba primero a cambiar la versión de PHP
Si has actualizado recientemente la versión de PrestaShop 1.7.x y no puedes entrar al BackOffice, revisa el archivo error_log que hay en la carpeta donde están los archivos del Back Office y revisa a ver si ves el siguiente error:
use of undefined constant intl_idna_variant_uts46 - assumed 'intl_idna_variant_uts46'
Si es así, prueba a cambiar la versión de PHP de tu tienda por la versión 7.3.
Limpia las cookies y los temporales del navegador y prueba de nuevo a entrar.
Otra solución adicional
Si sigue persistiendo el error, prueba a modificar una línea del siguiente archivo:
/src/Core/Util/InternationalizedDomainNameConverter.php
Cambia la línea siguiente:
return $parts[0] . '@' . idn_to_utf8($parts[1], 0, INTL_IDNA_VARIANT_UTS46);
Por esta otra:
return $parts[0] . '@' . idn_to_utf8($parts[1], 0, intval(INTL_IDNA_VARIANT_UTS46));
Créditos: https://www.prestashop.com/forums/topic/1027541-cannot-login-to-my-shop-backend/
Si recibes otro error relacionado: "PHP Deprecated: idn_to_utf8(): INTL_IDNA_VARIANT_2003"
Comprueba que existan las siguientes tablas en tu PrestaShop:
- _employee_session
- _customer_session
Si no es así, deberás correr el siguiente comando MySQL en PHPMyAdmin (revisa que el prefijo de las tablas de tu base de datos empiezan por "ps_" si no tendrás que adaptarlo en estos 2 comandos):
CREATE TABLE `ps_employee_session` ( `id_employee_session` int(11) unsigned NOT NULL auto_increment, `id_employee` int(10) unsigned DEFAULT NULL, `token` varchar(40) DEFAULT NULL, PRIMARY KEY `id_employee_session` (`id_employee_session`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `ps_customer_session` ( `id_customer_session` int(11) unsigned NOT NULL auto_increment, `id_customer` int(10) unsigned DEFAULT NULL, `token` varchar(40) DEFAULT NULL, PRIMARY KEY `id_customer_session` (`id_customer_session`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Ahora deberías poder entrar a PrestaShop con normalidad.