Jump to content
jrsiles

error al enviar mensaje desde el formulario de contacto

Recommended Posts

Buenas, acabo de configurar el correo electronico y cuando intento enviar un mensaje desde contacta con nosotros me aparece.

 

Error 1

 

1. Se ha producido un error al enviar el mensaje.

 

Cuando realizo una prueba desde la configuracion del correro electronico de prestashop funciona correctamente. Pero desde la web recibo el mensaje en prestashop pero no llega al correo.

 

Espero vuestra ayuda. Muchas gracias.

Edited by jrsiles (see edit history)

Share this post


Link to post
Share on other sites

Busco solución a estos 2 problemas (relacionados con lo que veo acá en este post)


 


1.- Cuando hago la prueba de enviar un correo a través de contacto aparece el bendito error "Error 1 Se produjo error al enviar el Correo Electronico" cuando recargo esa misma pagina aparece el letrerito verde de mensaje enviado...Sin embargo a pesar del error el mensaje llega correctamente a la atención de clientes incluso antes de recargar la pagina que es cuando aparece el letrero verde.  YO SOLO QUIERO QUITAR EL MENSAJE DE ERROR POR QUE FUNCIONA BIEN.


 


2.- El segundo problema es que cuando intento recuperar contraseña en el frontend me manda Error 404, cabe destacar que ya cambie la famosa ñ y no pasa nada...ademas no envia el dichoso correo con la contraseña para hacer el cambio etc...


 


La versión sobre la que trabajo es la 1.6.1.7 uso el tema default   


 


 


Ojala un alma piadosa pueda ayudarme gracias.


Edited by saulmeza (see edit history)

Share this post


Link to post
Share on other sites

Exacto saulmeza, tu lo has explicado mejor que yo, y añado esta pregunta ¿por que llegan a atencion de clientes y no al correo?

 

Espero que alguien sepa arreglarlo y nos ayude.

 

un saludo

Share this post


Link to post
Share on other sites

Si cambio el idioma a gallego si me funciona pero en español no. Alguien sabe que pude ser? Gracias.

Share this post


Link to post
Share on other sites

He restaurado:

 

ContactController.php
contact-form.tpl

 

y nada, sigue dando error, solo funciona en el idioma gallego.

 

No se si hay que restaurar algo mas.

Edited by jrsiles (see edit history)

Share this post


Link to post
Share on other sites

solucionado, solo hay que actualizar los idiomas a traves de traducciones. por fiiinnn!!!

Hola,  me ha servido esto. ¿Cómo has llegado a esa conclusión? ¿Algún bug de la última versión? 

 

Saludos

Share this post


Link to post
Share on other sites

He solucionado el mismo error.

 

Primero intente actualizando el idioma como sugiere jrsiles, pero no funciono como esperaba.

 

El problema es que mi servidor por motivos de seguridad tiene desactivado el envio de correos mediante Mail PHP que es la opcion que veo tiene prestashop configurada por defecto. Tanto si se usa para enviar el formulario de contacto como para las funciones de la tienda no funcionara.

 

Asi que me he ido a Parametros Avanzados (prestashop ver. 1.7.0.4) y ahi hay una opcion que dice "correo electronico", ahi es donde se puede modificar la configuracion para los envios de mensajes desde la tienda por correo electronico, he quitado la opcion seleccionada que decia "Usar la función mail() de PHP. Recomendado en la mayoría de los casos" y he escogido la que pone: "Establecer mis propios parámetros SMTP. Sólo para usuarios AVANZADOS"

Se me han activado las opciones de configuracion SMTP (Por fin!!!!) y ya ahi solo fue configurar las opciones de envio tal y como lo haria al configurar mi cuenta en outlook, thunderbird o cualquier otro cliente de correo.

 

Una vez hecho esto todo comenzo a funcionar con normalidad.

Espero les sea util

Share this post


Link to post
Share on other sites

Buenas, tengo este mismo problema con la versión 1.6.1.17.

 

¿Qué hay que hacer para solucionarlo sin actualizar las traducciones?, tengo mil cambios y adaptaciones hechos y no puedo perderlos.

 

Saludos y gracias.

Edited by Alberto Navarro (see edit history)

Share this post


Link to post
Share on other sites
On 10/10/2017 at 5:14 PM, Alberto Navarro said:

Buenas, tengo este mismo problema con la versión 1.6.1.17.

 

¿Qué hay que hacer para solucionarlo sin actualizar las traducciones?, tengo mil cambios y adaptaciones hechos y no puedo perderlos.

 

Saludos y gracias.

 

Has podido solucionar el problema? me pasa lo mismo en la versión 1.6.1.7

Share this post


Link to post
Share on other sites

Hola a todos, a mi me pasa lo mismo, me da ese maldito error.

Tengo prestashop 1.6.1.17

He probado a cambiar los parámetros a Establecer mis propios parámetros SMTP , y no se soluciona, me sigue pasando lo mismo.

¿alguien sabe que puedo hacer?

Muchas gracias.

Share this post


Link to post
Share on other sites

Hola amigos, después de muchas lunas encontré la solución,  es un error en el archivo contact-form.tpl. 

Reemplacen el archivo tal esta y solucionará su error. Adjunto el archivo 

Espero haya sido de su ayuda.

contact-form.tpl

___________________________________________________________________________________________________________

{*
* 2007-2016 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <contact@prestashop.com>
*  @copyright  2007-2016 PrestaShop SA
*  @license   http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*}
{capture name=path}{l s='Contact'}{/capture}
<h1 class="page-heading bottom-indent">
    {l s='Customer service'} - {if isset($customerThread) && $customerThread}{l s='Your reply'}{else}{l s='Contact us'}{/if}
</h1>
{if isset($confirmation)}
    <p class="alert alert-success">{l s='Your message has been successfully sent to our team.'}</p>
    <ul class="footer_links clearfix">
        <li>
            <a class="btn btn-default button button-small" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}">
                <span>
                    <i class="icon-chevron-left"></i>{l s='Home'}
                </span>
            </a>
        </li>
    </ul>
{elseif isset($alreadySent)}
    <p class="alert alert-warning">{l s='Your message has already been sent.'}</p>
    <ul class="footer_links clearfix">
        <li>
            <a class="btn btn-default button button-small" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}">
                <span>
                    <i class="icon-chevron-left"></i>{l s='Home'}
                </span>
            </a>
        </li>
    </ul>
{else}
    {include file="$tpl_dir./errors.tpl"}
    <form action="{$request_uri}" method="post" class="contact-form-box" enctype="multipart/form-data">
        <fieldset>
            <h3 class="page-subheading">{l s='send a message'}</h3>
            <div class="clearfix">
                <div class="col-xs-12 col-md-3">
                    <div class="form-group selector1">
                        <label for="id_contact">{l s='Subject Heading'}</label>
                    {if isset($customerThread.id_contact) && $customerThread.id_contact && $contacts|count}
                            {assign var=flag value=true}
                            {foreach from=$contacts item=contact}
                                {if $contact.id_contact == $customerThread.id_contact}
                                    <input type="text" class="form-control" id="contact_name" name="contact_name" value="{$contact.name|escape:'html':'UTF-8'}" readonly="readonly" />
                                    <input type="hidden" name="id_contact" value="{$contact.id_contact|intval}" />
                                    {$flag=false}
                                {/if}
                            {/foreach}
                            {if $flag && isset($contacts.0.id_contact)}
                                    <input type="text" class="form-control" id="contact_name" name="contact_name" value="{$contacts.0.name|escape:'html':'UTF-8'}" readonly="readonly" />
                                    <input type="hidden" name="id_contact" value="{$contacts.0.id_contact|intval}" />
                            {/if}
                    </div>
                    {else}
                        <select id="id_contact" class="form-control" name="id_contact">
                            <option value="0">{l s='-- Choose --'}</option>
                            {foreach from=$contacts item=contact}
                                <option value="{$contact.id_contact|intval}"{if isset($smarty.request.id_contact) && $smarty.request.id_contact == $contact.id_contact} selected="selected"{/if}>{$contact.name|escape:'html':'UTF-8'}</option>
                            {/foreach}
                        </select>
                    </div>
                        <p id="desc_contact0" class="desc_contact{if isset($smarty.request.id_contact)} unvisible{/if}">&nbsp;</p>
                        {foreach from=$contacts item=contact}
                            <p id="desc_contact{$contact.id_contact|intval}" class="desc_contact contact-title{if !isset($smarty.request.id_contact) || $smarty.request.id_contact|intval != $contact.id_contact|intval} unvisible{/if}">
                                <i class="icon-comment-alt"></i>{$contact.description|escape:'html':'UTF-8'}
                            </p>
                        {/foreach}
                    {/if}
                    <p class="form-group">
                        <label for="email">{l s='Email address'}</label>
                        {if isset($customerThread.email)}
                            <input class="form-control grey" type="text" id="email" name="from" value="{$customerThread.email|escape:'html':'UTF-8'}" readonly="readonly" />
                        {else}
                            <input class="form-control grey validate" type="text" id="email" name="from" data-validate="isEmail" value="{$email|escape:'html':'UTF-8'}" />
                        {/if}
                    </p>
                    {if !$PS_CATALOG_MODE}
                        {if (!isset($customerThread.id_order) || $customerThread.id_order > 0)}
                            <div class="form-group selector1">
                                <label>{l s='Order reference'}</label>
                                {if !isset($customerThread.id_order) && isset($is_logged) && $is_logged}
                                    <select name="id_order" class="form-control">
                                        <option value="0">{l s='-- Choose --'}</option>
                                        {foreach from=$orderList item=order}
                                            <option value="{$order.value|intval}"{if $order.selected|intval} selected="selected"{/if}>{$order.label|escape:'html':'UTF-8'}</option>
                                        {/foreach}
                                    </select>
                                {elseif !isset($customerThread.id_order) && empty($is_logged)}
                                    <input class="form-control grey" type="text" name="id_order" id="id_order" value="{if isset($customerThread.id_order) && $customerThread.id_order|intval > 0}{$customerThread.id_order|intval}{else}{if isset($smarty.post.id_order) && !empty($smarty.post.id_order)}{$smarty.post.id_order|escape:'html':'UTF-8'}{/if}{/if}" />
                                {elseif $customerThread.id_order|intval > 0}
                                    <input class="form-control grey" type="text" name="id_order" id="id_order" value="{if isset($customerThread.reference) && $customerThread.reference}{$customerThread.reference|escape:'html':'UTF-8'}{else}{$customerThread.id_order|intval}{/if}" readonly="readonly" />
                                {/if}
                            </div>
                        {/if}
                        {if isset($is_logged) && $is_logged}
                            <div class="form-group selector1">
                                <label class="unvisible">{l s='Product'}</label>
                                {if !isset($customerThread.id_product)}
                                    {foreach from=$orderedProductList key=id_order item=products name=products}
                                        <select name="id_product" id="{$id_order}_order_products" class="unvisible product_select form-control"{if !$smarty.foreach.products.first} style="display:none;"{/if}{if !$smarty.foreach.products.first} disabled="disabled"{/if}>
                                            <option value="0">{l s='-- Choose --'}</option>
                                            {foreach from=$products item=product}
                                                <option value="{$product.value|intval}">{$product.label|escape:'html':'UTF-8'}</option>
                                            {/foreach}
                                        </select>
                                    {/foreach}
                                {elseif $customerThread.id_product > 0}
                                    <input  type="hidden" name="id_product" id="id_product" value="{$customerThread.id_product|intval}" readonly="readonly" />
                                {/if}
                            </div>
                        {/if}
                    {/if}
                    {if $fileupload == 1}
                        <p class="form-group">
                            <label for="fileUpload">{l s='Attach File'}</label>
                            <input type="hidden" name="MAX_FILE_SIZE" value="{if isset($max_upload_size) && $max_upload_size}{$max_upload_size|intval}{else}2000000{/if}" />
                            <input type="file" name="fileUpload" id="fileUpload" class="form-control" />
                        </p>
                    {/if}
                </div>
                <div class="col-xs-12 col-md-9">
                    <div class="form-group">
                        <label for="message">{l s='Message'}</label>
                        <textarea class="form-control" id="message" name="message">{if isset($message)}{$message|escape:'html':'UTF-8'|stripslashes}{/if}</textarea>
                    </div>
                </div>
            </div>
            <div class="submit">
                <input type="text" name="url" value="" class="hidden" />
                <input type="hidden" name="contactKey" value="{$contactKey}" />
                <button type="submit" name="submitMessage" id="submitMessage" class="button btn btn-default button-medium"><span>{l s='Send'}<i class="icon-chevron-right right"></i></span></button>
            </div>
        </fieldset>
    </form>
{/if}
{addJsDefL name='contact_fileDefaultHtml'}{l s='No file selected' js=1}{/addJsDefL}
{addJsDefL name='contact_fileButtonHtml'}{l s='Choose File' js=1}{/addJsDefL}

contact-form.tpl

  • Thanks 2

Share this post


Link to post
Share on other sites
12 minutes ago, omagallanes said:

Hola amigos, después de muchas lunas encontré la solución,  es un error en el archivo contact-form.tpl. 

Reemplacen el archivo tal esta y solucionará su error. Adjunto el archivo 

Espero haya sido de su ayuda.

contact-form.tpl

___________________________________________________________________________________________________________

{*
* 2007-2016 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <contact@prestashop.com>
*  @copyright  2007-2016 PrestaShop SA
*  @license   http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*}
{capture name=path}{l s='Contact'}{/capture}
<h1 class="page-heading bottom-indent">
    {l s='Customer service'} - {if isset($customerThread) && $customerThread}{l s='Your reply'}{else}{l s='Contact us'}{/if}
</h1>
{if isset($confirmation)}
    <p class="alert alert-success">{l s='Your message has been successfully sent to our team.'}</p>
    <ul class="footer_links clearfix">
        <li>
            <a class="btn btn-default button button-small" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}">
                <span>
                    <i class="icon-chevron-left"></i>{l s='Home'}
                </span>
            </a>
        </li>
    </ul>
{elseif isset($alreadySent)}
    <p class="alert alert-warning">{l s='Your message has already been sent.'}</p>
    <ul class="footer_links clearfix">
        <li>
            <a class="btn btn-default button button-small" href="{if isset($force_ssl) && $force_ssl}{$base_dir_ssl}{else}{$base_dir}{/if}">
                <span>
                    <i class="icon-chevron-left"></i>{l s='Home'}
                </span>
            </a>
        </li>
    </ul>
{else}
    {include file="$tpl_dir./errors.tpl"}
    <form action="{$request_uri}" method="post" class="contact-form-box" enctype="multipart/form-data">
        <fieldset>
            <h3 class="page-subheading">{l s='send a message'}</h3>
            <div class="clearfix">
                <div class="col-xs-12 col-md-3">
                    <div class="form-group selector1">
                        <label for="id_contact">{l s='Subject Heading'}</label>
                    {if isset($customerThread.id_contact) && $customerThread.id_contact && $contacts|count}
                            {assign var=flag value=true}
                            {foreach from=$contacts item=contact}
                                {if $contact.id_contact == $customerThread.id_contact}
                                    <input type="text" class="form-control" id="contact_name" name="contact_name" value="{$contact.name|escape:'html':'UTF-8'}" readonly="readonly" />
                                    <input type="hidden" name="id_contact" value="{$contact.id_contact|intval}" />
                                    {$flag=false}
                                {/if}
                            {/foreach}
                            {if $flag && isset($contacts.0.id_contact)}
                                    <input type="text" class="form-control" id="contact_name" name="contact_name" value="{$contacts.0.name|escape:'html':'UTF-8'}" readonly="readonly" />
                                    <input type="hidden" name="id_contact" value="{$contacts.0.id_contact|intval}" />
                            {/if}
                    </div>
                    {else}
                        <select id="id_contact" class="form-control" name="id_contact">
                            <option value="0">{l s='-- Choose --'}</option>
                            {foreach from=$contacts item=contact}
                                <option value="{$contact.id_contact|intval}"{if isset($smarty.request.id_contact) && $smarty.request.id_contact == $contact.id_contact} selected="selected"{/if}>{$contact.name|escape:'html':'UTF-8'}</option>
                            {/foreach}
                        </select>
                    </div>
                        <p id="desc_contact0" class="desc_contact{if isset($smarty.request.id_contact)} unvisible{/if}">&nbsp;</p>
                        {foreach from=$contacts item=contact}
                            <p id="desc_contact{$contact.id_contact|intval}" class="desc_contact contact-title{if !isset($smarty.request.id_contact) || $smarty.request.id_contact|intval != $contact.id_contact|intval} unvisible{/if}">
                                <i class="icon-comment-alt"></i>{$contact.description|escape:'html':'UTF-8'}
                            </p>
                        {/foreach}
                    {/if}
                    <p class="form-group">
                        <label for="email">{l s='Email address'}</label>
                        {if isset($customerThread.email)}
                            <input class="form-control grey" type="text" id="email" name="from" value="{$customerThread.email|escape:'html':'UTF-8'}" readonly="readonly" />
                        {else}
                            <input class="form-control grey validate" type="text" id="email" name="from" data-validate="isEmail" value="{$email|escape:'html':'UTF-8'}" />
                        {/if}
                    </p>
                    {if !$PS_CATALOG_MODE}
                        {if (!isset($customerThread.id_order) || $customerThread.id_order > 0)}
                            <div class="form-group selector1">
                                <label>{l s='Order reference'}</label>
                                {if !isset($customerThread.id_order) && isset($is_logged) && $is_logged}
                                    <select name="id_order" class="form-control">
                                        <option value="0">{l s='-- Choose --'}</option>
                                        {foreach from=$orderList item=order}
                                            <option value="{$order.value|intval}"{if $order.selected|intval} selected="selected"{/if}>{$order.label|escape:'html':'UTF-8'}</option>
                                        {/foreach}
                                    </select>
                                {elseif !isset($customerThread.id_order) && empty($is_logged)}
                                    <input class="form-control grey" type="text" name="id_order" id="id_order" value="{if isset($customerThread.id_order) && $customerThread.id_order|intval > 0}{$customerThread.id_order|intval}{else}{if isset($smarty.post.id_order) && !empty($smarty.post.id_order)}{$smarty.post.id_order|escape:'html':'UTF-8'}{/if}{/if}" />
                                {elseif $customerThread.id_order|intval > 0}
                                    <input class="form-control grey" type="text" name="id_order" id="id_order" value="{if isset($customerThread.reference) && $customerThread.reference}{$customerThread.reference|escape:'html':'UTF-8'}{else}{$customerThread.id_order|intval}{/if}" readonly="readonly" />
                                {/if}
                            </div>
                        {/if}
                        {if isset($is_logged) && $is_logged}
                            <div class="form-group selector1">
                                <label class="unvisible">{l s='Product'}</label>
                                {if !isset($customerThread.id_product)}
                                    {foreach from=$orderedProductList key=id_order item=products name=products}
                                        <select name="id_product" id="{$id_order}_order_products" class="unvisible product_select form-control"{if !$smarty.foreach.products.first} style="display:none;"{/if}{if !$smarty.foreach.products.first} disabled="disabled"{/if}>
                                            <option value="0">{l s='-- Choose --'}</option>
                                            {foreach from=$products item=product}
                                                <option value="{$product.value|intval}">{$product.label|escape:'html':'UTF-8'}</option>
                                            {/foreach}
                                        </select>
                                    {/foreach}
                                {elseif $customerThread.id_product > 0}
                                    <input  type="hidden" name="id_product" id="id_product" value="{$customerThread.id_product|intval}" readonly="readonly" />
                                {/if}
                            </div>
                        {/if}
                    {/if}
                    {if $fileupload == 1}
                        <p class="form-group">
                            <label for="fileUpload">{l s='Attach File'}</label>
                            <input type="hidden" name="MAX_FILE_SIZE" value="{if isset($max_upload_size) && $max_upload_size}{$max_upload_size|intval}{else}2000000{/if}" />
                            <input type="file" name="fileUpload" id="fileUpload" class="form-control" />
                        </p>
                    {/if}
                </div>
                <div class="col-xs-12 col-md-9">
                    <div class="form-group">
                        <label for="message">{l s='Message'}</label>
                        <textarea class="form-control" id="message" name="message">{if isset($message)}{$message|escape:'html':'UTF-8'|stripslashes}{/if}</textarea>
                    </div>
                </div>
            </div>
            <div class="submit">
                <input type="text" name="url" value="" class="hidden" />
                <input type="hidden" name="contactKey" value="{$contactKey}" />
                <button type="submit" name="submitMessage" id="submitMessage" class="button btn btn-default button-medium"><span>{l s='Send'}<i class="icon-chevron-right right"></i></span></button>
            </div>
        </fieldset>
    </form>
{/if}
{addJsDefL name='contact_fileDefaultHtml'}{l s='No file selected' js=1}{/addJsDefL}
{addJsDefL name='contact_fileButtonHtml'}{l s='Choose File' js=1}{/addJsDefL}

contact-form.tpl

Disculpa, soy muy novato en esto, me podrías explicar como lo tengo que reemplazar?

 

Un saludo

Share this post


Link to post
Share on other sites

Exactamente en que punto del código está el error?? Yo tengo mi archivo bastante modificado y no quiero repisar todo. Gracias!

 

Vale no he dicho nada. Son estas dos lineas que van encima del button:

 

<input type="text" name="url" value="" class="hidden" />
<input type="hidden" name="contactKey" value="{$contactKey}" />

 

Yo la verdad que no entiendo como pueden haber estos fallos...

Un saludo! y muchas gracias!

Edited by info@pardebits.es (see edit history)
  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
On 26/10/2017 at 7:46 PM, toyx4u said:

Hola a todos, a mi me pasa lo mismo, me da ese maldito error.

Tengo prestashop 1.6.1.17

He probado a cambiar los parámetros a Establecer mis propios parámetros SMTP , y no se soluciona, me sigue pasando lo mismo.

¿alguien sabe que puedo hacer?

Muchas gracias.

Yo también tengo ese error.

Ha actualizado los archivos, los idiomas, probado con SMTP y nada ha funcionado

¿Alguna otra solución?

Share this post


Link to post
Share on other sites
On 1/12/2017 at 1:33 PM, Markillos306 said:

Yo también tengo ese error.

Ha actualizado los archivos, los idiomas, probado con SMTP y nada ha funcionado

¿Alguna otra solución?

yo lo solucioné reemplazando el archivo de formulario que dice más arriba.

Este es el enlace del archivo que descargué y está más arriba.

https://www.prestashop.com/forums/applications/core/interface/file/attachment.php?id=171538

Share this post


Link to post
Share on other sites

Solucionado en PS 1.6.1.18, hice upgrade desde 1.6.1.16 a la 1.6.1.18, y repentinamente el formulario de contacto no funcionaba en ningún idioma, sin mostrar más errores que el que se comenta aquí, pero no salía nada en modo debug. 

Tal y como dice info@pardebits.es se han de añadir esas líneas de código (los inputs) encima del button en el contact-form.tpl de tu tema, quedando así:

<div class="submit">
                <input type="text" name="url" value="" class="hidden" />
                <input type="hidden" name="contactKey" value="{$contactKey}" />

                <button type="submit" name="submitMessage" id="submitMessage" class="button btn btn-default button-medium"><span>{l s='Send'}<i class="icon-chevron-right right"></i></span></button>

 </div>

No es necesario actualizar idiomas, ni sobreescribir ficheros enteros.

A la pregunta de pardebits, que dice "no entiendo cómo puede pasar esto", yo se lo explico:

Actualizas PS  a nueva versión, pero no actualizas el tema por defecto o usas otro tema que no se actualiza con el 1-click upgrade, por lo tanto, en la actulización de PS ha cambiando un controlador del núcleo (ContactController.php), el cual tiene nueva funcionalidad, que no está reflejada en el contact-form.tpl de tu tema, por lo tanto, falla. Normal.

Si quieres evitar que pase esto, debes mirar el changelog de la nueva versión de PS que va a instalar, y/o usar los overrides para mantener la funcionalidad antigua o personalizada de tus classes y controllers, sinó te la juegas a que falle algo. Desde luego esto no es culpa de PS.

Gracias por la solución Pardebits!!

  • Thanks 1

Share this post


Link to post
Share on other sites
On 16/2/2018 at 1:12 PM, cespues said:

Solucionado en PS 1.6.1.18, hice upgrade desde 1.6.1.16 a la 1.6.1.18, y repentinamente el formulario de contacto no funcionaba en ningún idioma, sin mostrar más errores que el que se comenta aquí, pero no salía nada en modo debug. 

Tal y como dice info@pardebits.es se han de añadir esas líneas de código (los inputs) encima del button en el contact-form.tpl de tu tema, quedando así:

<div class="submit">
                <input type="text" name="url" value="" class="hidden" />
                <input type="hidden" name="contactKey" value="{$contactKey}" />

                <button type="submit" name="submitMessage" id="submitMessage" class="button btn btn-default button-medium"><span>{l s='Send'}<i class="icon-chevron-right right"></i></span></button>

 </div>

No es necesario actualizar idiomas, ni sobreescribir ficheros enteros.

A la pregunta de pardebits, que dice "no entiendo cómo puede pasar esto", yo se lo explico:

Actualizas PS  a nueva versión, pero no actualizas el tema por defecto o usas otro tema que no se actualiza con el 1-click upgrade, por lo tanto, en la actulización de PS ha cambiando un controlador del núcleo (ContactController.php), el cual tiene nueva funcionalidad, que no está reflejada en el contact-form.tpl de tu tema, por lo tanto, falla. Normal.

Si quieres evitar que pase esto, debes mirar el changelog de la nueva versión de PS que va a instalar, y/o usar los overrides para mantener la funcionalidad antigua o personalizada de tus classes y controllers, sinó te la juegas a que falle algo. Desde luego esto no es culpa de PS.

Gracias por la solución Pardebits!!

Buenos dias. Por favor para no expertos, me podrias dar la ruta del archivo contact-form.tpl y dond eexactamente hay que hacer el cambio por el codigo que comentas?. Mil gracias,..

Share this post


Link to post
Share on other sites

Solucionado reemplazando el Archivo de arribita:D contact-form.tpl

MUCHAS GRACIAS.

Share this post


Link to post
Share on other sites

A mi se me ha solucionado añadiendo las dos siguiente lineas encima del button submit, que està en el final del archivo contact-form.tpl.

 

ESTO ES EL FINAL DEL ARCHIVO contact-form.tpl

            <div class="submit">
                <input type="text" name="url" value="" class="hidden" />
                <input type="hidden" name="contactKey" value="{$contactKey}" />

                <button type="submit" name="submitMessage" id="submitMessage" class="button btn btn-default button-medium"><span>{l s='Send'}<i class="icon-chevron-right right"></i></span></button>
            </div>
        </fieldset>
    </form>
{/if}
{addJsDefL name='contact_fileDefaultHtml'}{l s='No file selected' js=1}{/addJsDefL}
{addJsDefL name='contact_fileButtonHtml'}{l s='Choose File' js=1}{/addJsDefL}
 

gracias a todos.

David

Share this post


Link to post
Share on other sites

Cordial saludo, tengo la versión 1.6.1.18.

Ya hice todos los cambios que explican en los mensajes de arriba, pero nada, el error sigue apareciendo.

Existe alguna otra solución?

 

Share this post


Link to post
Share on other sites
12 hours ago, Rodrigo said:

Cordial saludo, tengo la versión 1.6.1.18.

Ya hice todos los cambios que explican en los mensajes de arriba, pero nada, el error sigue apareciendo.

Existe alguna otra solución?

 

Si has modificado la plantilla, mira que no tengas la caché activada y no estés viendo el cambio.

Share this post


Link to post
Share on other sites

En mi caso con un prestashop 1.7.4 el problema estaba en la plantilla que estaba mal.

La solución fue mirar en la plantilla original y justo parece algo similar a lo que habéis puesto, pero no es exactamente igual. El caso es que se lo he añadido y funciona. 

Así que una solución, si estáis usando una plantilla es comprobar la plantilla inicial (en mi caso classic) con la instalada y ver si encima del botón submit tiene el código que comentais.

 

Todo esto gracias a cespues que me ha iluminado con su explicación.

 

Muchas gracias!

Share this post


Link to post
Share on other sites

Para los que usan version 1.7.4.2

1.- si aparece el error  Se ha producido un error al enviar el mensaje.

Hay que revisar en  /themes/tu tema en uso/modules/contactform/views/templates/widget/contactform.tpl  e insertar justo antes de <input class="btn btn-primary" type="submit" name="submitMessage" value="{l s='Send' d='Shop.Theme.Actions'}"> el siguiente código:

<!-- correccion  -->
        <style>
        input[name=url] {
        display: none !important;
        }
        </style>
        <input type="text" name="url" value=""/>
        <input type="hidden" name="token" value="{$token}" />
  <!-- -->

2.- En el backend en módulos buscar form y configurar módulo formulario de contacto para que envíe confirmación si lo deseas y te envié el mensaje al email si quieres. Si no se configura esto los emails no se envian y solo aparecen en el apartado servicio al cliente.

Espero que ayude, así es como a mi me ha funcionado después de darle muchas vueltas...

 

  • Like 2

Share this post


Link to post
Share on other sites
On 27/9/2018 at 6:24 PM, Chicho1969 said:

Para los que usan version 1.7.4.2

1.- si aparece el error  Se ha producido un error al enviar el mensaje.

Hay que revisar en  /themes/tu tema en uso/modules/contactform/views/templates/widget/contactform.tpl  e insertar justo antes de <input class="btn btn-primary" type="submit" name="submitMessage" value="{l s='Send' d='Shop.Theme.Actions'}"> el siguiente código:

<!-- correccion  -->
        <style>
        input[name=url] {
        display: none !important;
        }
        </style>
        <input type="text" name="url" value=""/>
        <input type="hidden" name="token" value="{$token}" />
  <!-- -->

2.- En el backend en módulos buscar form y configurar módulo formulario de contacto para que envíe confirmación si lo deseas y te envié el mensaje al email si quieres. Si no se configura esto los emails no se envian y solo aparecen en el apartado servicio al cliente.

Espero que ayude, así es como a mi me ha funcionado después de darle muchas vueltas...

 

Solucionado con ese pedacito de código en PS 1.7.3.3. Gracias

Share this post


Link to post
Share on other sites
On 12/18/2018 at 11:57 AM, MomoFito said:

Solucionado para la versión 1.7.4.4 Gracias!

La de vueltas que he dado y lo fácil que era. :P

tengo la misma version, he puesto el codigo en el archivo del template que uso, y no hay manera. Solo me funciona si borro el archivo, pero no se ve igual de bonito.Si alguien tiene alguna idea seria de gran ayuda.

Share this post


Link to post
Share on other sites
Posted (edited)
On 9/27/2018 at 6:24 PM, Chicho1969 said:

Para los que usan version 1.7.4.2

1.- si aparece el error  Se ha producido un error al enviar el mensaje.

Hay que revisar en  /themes/tu tema en uso/modules/contactform/views/templates/widget/contactform.tpl  e insertar justo antes de <input class="btn btn-primary" type="submit" name="submitMessage" value="{l s='Send' d='Shop.Theme.Actions'}"> el siguiente código:

<!-- correccion  -->
        <style>
        input[name=url] {
        display: none !important;
        }
        </style>
        <input type="text" name="url" value=""/>
        <input type="hidden" name="token" value="{$token}" />
  <!-- -->

2.- En el backend en módulos buscar form y configurar módulo formulario de contacto para que envíe confirmación si lo deseas y te envié el mensaje al email si quieres. Si no se configura esto los emails no se envian y solo aparecen en el apartado servicio al cliente.

Espero que ayude, así es como a mi me ha funcionado después de darle muchas vueltas...

 

Muchas gracias! Mirando código y haciendo pruebas, cuando era darle al botón ... 😅

En Prestashop 1.7.5.1 hay que ir a Módulos > Modules Manager > "contactform"  y marcar en > "Recibir los mensajes de los clientes por correo electrónico"

contactform.jpg

Edited by ecommjuice.com (see edit history)

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More