Formulario en UTF-8  

 
Carlos
 Carlos
Reputable Member

Hola,
Cuando hacen un pedido, en el mensaje si ponen tildes o caracteres especiales me da error el transportista porque incluyen un &, me dicen que tengo que hacer una validación al formulario para que los datos se registren en UTF-8, ¿Como lo hago?

URL del sitio: Contenido solo visible a usuarios registrados

Citar
Respondido : 23/05/2019 1:12 pm
Jhon Marreros Guzman
 Jhon Marreros Guzman
Soporte CMS Webempresa Moderator

Hola

Qué versión exacta de PrestaShop usas?
Es probable que el theme que usas no este limpiando estos caracteres

Verifica si tienes este archivo:
themesTUTEMAtemplatescheckout_partialsstepsshipping.tpl

Prueba renombrándolo, de esta forma tomaría el archivo por defecto, la otra opción sería hacer modificaciones en el textarea, tal como se comenta en:
https://www.prestashop.com/forums/topic/611584-customer-message-on-checkout-delivery/

Prueba agregando un nuevo mensaje desde ese formulario ya que sólo servirían para los nuevos mensajes.

Saludos.

Si nuestra ayuda te sirve déjanos tu testimonio y mejora así el posicionamiento de tu web:
Enviar mi Testimonio
¡Gracias!.

ResponderCitar
Respondido : 23/05/2019 6:35 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Carlos
 Carlos
Reputable Member

Hola,
Si renombro el fichero en mi tema, me da error 500 y no funciona la web.
No me queda claro que es lo que tengo que poner en el fichero porque he probado a incluir {if isset($message)}{$message|escape:'html':'UTF-8'}{/if} y me da error

He probado a poner así {$delivery_message|escape:'html':'UTF-8'} y no hace nada 🙁
Sigue devolviendo el texto así: Prueba, texto mañana con tíldes

ResponderCitar
Respondido : 24/05/2019 12:04 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Carlos.

Edita el archivo Tools.php que encontraras en al carpeta classes y busca el siguiente código:

public static function htmlentitiesUTF8($string, $type = ENT_QUOTES)
    {
        if (is_array($string)) {
            return array_map(array('Tools', 'htmlentitiesUTF8'), $string);
        }

        return htmlentities((string) $string, $type, 'utf-8');
    }

Modifica el código por el siguiente:

 public static function htmlentitiesUTF8($string, $type = ENT_QUOTES)
    {
        if (is_array($string)) {
            return array_map(array('Tools', 'htmlentitiesUTF8'), $string);
        }
	return htmlspecialchars((string)$string, $type, "UTF-8");

        //USE htmlspecialchars NOT htmlentities
    }

Por lo que veo es un bug que se soluciono en la version 7.5.1, comprueba que tengas prestashsop actualizado.

-> https://github.com/PrestaShop/PrestaShop/pull/12103

Antes de realizar la modificación recuerda descargar una copia del archivo original.

Un saludo

Si nuestra ayuda te sirve déjanos tu testimonio y mejora así el posicionamiento de tu web:
Enviar Testimonio
¿Has probado WpCenter?, es nuestro nuevo manager de WordPress desde el propio cPanel sin necesidad de acceder a tu administración, te permitirá configurar actualizaciones automáticas y mucho más.
Pruébalo accediendo a tu cPanel > Aplicaciones Webempresa > WpCenter
¡Gracias!.

ResponderCitar
Respondido : 24/05/2019 4:29 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Carlos
 Carlos
Reputable Member

Hola,
No me ha funcionado, lo he cambiado pero sigue igual https://prnt.sc/nubye9, dice el cliente que no puede generar lo del transportista por los caracteres especiales.

ResponderCitar
Respondido : 28/05/2019 12:37 pm
Jhon Marreros Guzman
 Jhon Marreros Guzman
Soporte CMS Webempresa Moderator

Hola

Tienes tu PrestaShop actualizado?, qué versión exacta tienes?

De manera general podrías copiar el mismo archivo desde el theme por defecto y verificar.
Busca si tienes este archivo en el theme classic que viene por defecto
themesclassictemplatescheckout_partialsstepsshipping.tpl

Renombra el archivo de tu theme y usa el archivo del theme classic

La otra opción es cambiar temporalmente de theme y verificar si te sucede lo mismo, esto para descartar si es un problema con el theme

Saludos.

Si nuestra ayuda te sirve déjanos tu testimonio y mejora así el posicionamiento de tu web:
Enviar mi Testimonio
¡Gracias!.

ResponderCitar
Respondido : 28/05/2019 7:04 pm

Cursos Gratuitos WordPress

Carlos
 Carlos
Reputable Member

Hola!
Tengo la versión 1.7.5.1, he reemplazado el fichero classictemplatescheckout_partialsstepsshipping.tpl en mi tema y el mensaje sigue apareciendo en html, voy a ver si funciona el transporte

ResponderCitar
Respondido : 29/05/2019 2:35 pm

Por favor Iniciar Sesión o Registro