Main menu

Solución al Fatal error: Call to undefined function mcrypt_encrypt de Rijndael.php

Es posible que el Fatal error: Call to undefined function mcrypt_encrypt de Rijndael.php  te lo hayas encontrado en más de una ocasión en Prestashop, aprende a solucionarlo fácilmente y a evitarlo con estos sencillos pasos.

Causa y solución del error undefined function mcrypt_encrypt

Este error suele aparecer cuando migramos nuestra tienda Prestashop a otro servidor que no tiene instalada la extensión mcrypt de PHP.

Rijndael es un algoritmo de cifrado que hace uso de dicha extensión, por lo que tienes dos opciones: instalar mcrypt en tu servidor web (puede ser complicado si se trata de uno compartido) o deshabilitar esa configuración ejecutando la siguiente sentencia en tu base de datos MySQL:

UPDATE ps_configuration SET value=0 WHERE name="PS_CIPHER_ALGORITHM"

Recuerda que si no usas el prefijo por defecto «ps_» deberás poner el tuyo en «ps_configuration» quedando «tuprefijo_configuration«.

Si no tienes claro cómo hacerlo, sigue estos pasos:

Entra al phpMyAdmin para acceder a la base de datos que consulta tu tienda Prestashop y haz clic sobre el menú SQLaccesso phpmyadmin

 

Pega en el cuadro de texto la sentencia a ejecutar con tu prefijo de base de datos y clica sobre Continuarsentencia-prestashop-cipher-algorithm

 

Si todo ha ido bien, verás un mensaje de confirmación Prestashop Rijndael SQL

Configurar Prestashop para no usar Rijndael

Accede a la administración de tu Prestashop antes de hacer la migración y dirígete al menú Parámetros Avanzados > Rendimiento.

Desplázate hasta llegar al apartado Cifrado y cambia la opción Utilizar Rijndael con la librería mcript por la opción Usar la clase personalizada de BlowFish.

Cifrado Prestashp

Con este cambio, ya no aparecerá el Fatal error: Call to undefined function mcrypt_encrypt al migrar tu tienda Prestashp a otro servidor.

Si sigues con el problema o necesitas más ayuda, ponte en contacto con nuestro equipo de desarrollo web y cuéntales tu caso.

Comparte en redes sociales
classic-editor-remember:
classic-editor

4 Comments

  1. Buenas, espero me puedan ayudar. Segui todos los pasos, se acomodo, pero solo en la version en ingles, al momento de colocar al idioma espa;ol en la pagina web, no aparecen los banner y se desconfigura.
    Espero me puedan ayudar

    1. Hola @disqus_wIBq7Q6Hjc:disqus
      Me alegra saber que te funcionó el tutorial para arreglar el error de Rijndael.php
      Por lo que comentas, parece que ahora el problema es otro diferente. Si te funciona la web bien en inglés pero no te funciona en español, significa que no tienes bien configurado el multidioma.

      Asegúrate de tener bien configurados los banners, no vaya a ser que no los hayas traducido al español. Por ejemplo, si usas la plantilla por defecto, en el «Configurador de temas» no olvides seleccionar la pestaña «Español» para añadir un banner en español.

      Lo mismo si usas widgets o artículos del CMS, recuerda siempre seleccionar el idioma en su pestaña correspondiente.

      1. Hola Kevin Teran
        Me alegra saber que te funcionó el tutorial para arreglar el error de Rijndael.php
        Por lo que comentas, parece que ahora el problema es otro diferente. Si te funciona la web bien en inglés pero no te funciona en español, significa que no tienes bien configurado el multidioma.

        Asegúrate de tener bien configurados los banners, no vaya a ser que no los hayas traducido al español. Por ejemplo, si usas la plantilla por defecto, en el «Configurador de temas» no olvides seleccionar la pestaña «Español» para añadir un banner en español.
        https://uploads.disquscdn.com/images/8439acae5e8a86d79331b367f5152b3bc7aad3258f6719852693b54304f14529.png

        Lo mismo si usas widgets o artículos del CMS, recuerda siempre seleccionar el idioma en su pestaña correspondiente. https://uploads.disquscdn.com/images/5fdb19e1fc9055c94e40e50356d821e1e549855e69548d6fd4aca3a2062c5d9b.png

    2. Hola Kevin Teran
      Me alegra saber que te funcionó el tutorial para arreglar el error de Rijndael.php
      Por lo que comentas, parece que ahora el problema es otro diferente. Si te funciona la web bien en inglés pero no te funciona en español, significa que no tienes bien configurado el multidioma.

      Asegúrate de tener bien configurados los banners, no vaya a ser que no los hayas traducido al español. Por ejemplo, si usas la plantilla por defecto, en el «Configurador de temas» no olvides seleccionar la pestaña «Español» para añadir un banner en español.
      https://uploads.disquscdn.com/images/8439acae5e8a86d79331b367f5152b3bc7aad3258f6719852693b54304f14529.png

      Lo mismo si usas widgets o artículos del CMS, recuerda siempre seleccionar el idioma en su pestaña correspondiente. https://uploads.disquscdn.com/images/5fdb19e1fc9055c94e40e50356d821e1e549855e69548d6fd4aca3a2062c5d9b.png

      Espero que te sirva.

Al usar este sitio acepta el uso de cookies para análisis y contenido personalizado. Leer más

ACEPTAR
Aviso de cookies