SimpleForm как в письме оставить только сообщение

Тема в разделе "Внешний вид, шаблоны, графика", создана пользователем AlexChervon, 24.11.2015.

  1. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    У меня после отправки через эту форму, приходит письмо которое содержит email и сообщение. Как оставить только сообщение ?
     
  2.  
  3. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
  4. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    вы не поняли. В форме всего 1 поле, email получателя и оно как раз и в письме отпечатывается
     
  5. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    Я Вам советую читать документацию: http://allforjoomla.ru/xmodules/mod-simpleform2

    Код (html):
    1. {form}
    2. <p>{element label="Ваше имя" class="form-field" type="text" required="required" error="Введите ваше имя" /}</p>
    3. <p>{element label="Email" class="form-field" type="text" required="required" error="Введите ваш e-mail" /}</p>
    4. <p>{element label="Сообщение" class="form-field" type="textarea" required="required" error="Введите ваше сообщение" /}</p>
    5. <p class="submit-container">{element value="Отправить" class="form-button" type="submit" /}</p>
    6. {/form}
     
  6. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    Я читал. Я понял как добавлять поля и убирать. Если я уберу строку
    Код (html):
    1. <p>{element label="Email" class="form-field" type="text" required="required" error="Введите ваш e-mail" /}</p>

    то куда будут приходить письма? Тк email получателя указан как {sender} а в строке
    Код (html):
    1. <p>{element label="Email" class="form-field" name="sender" type="text" required="required" error="Введите ваш e-mail" /}</p>
    name="sender". И вот как раз этот sender приходит в письме вместе с сообщением
     
  7. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    в настройках модуля, а в поле он пишет свой маил для нужд админа.
     
  8. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    я хочу чтобы пользователь ввел email на который хочет отправить сообщение. Поэтому в настройках модуля к строке E-mail получателя я указал {sender}, тоесть письмо отправится на тот адрес который указал пользователь
     
  9. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    Вам надо чтобы получатель получал только текст?
    В модуле есть хелпер - который интерпретирует данные.

    tmpl - > mail_form.php

    Код (CODE):
    1. <p><?php echo JTEXT::_('Hello');?></p>
    2. <p><?php echo JTEXT::_('Sent from page');?>: <?php echo $url;?>.</p>
    3. <p><?php echo JTEXT::_('Date');?>: <?php echo $date;?>.</p>
    4. <p><?php echo JTEXT::_('User ip');?>: <?php echo $ip;?>.</p>
    5. <table cellpadding="5" cellspacing="0">
    6. <tr>
    7. <th colspan="2"><font size="+1"><?php echo JTEXT::_('Form content');?>:</font></th>
    8. </tr>
    9. <?php echo $rows;?>
    10. </table>


    Вам видимо надо будет тут ловить мыло и удалять для вывода.
     
  10. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    делал! Email и сообщение содержится в это строке <?php echo $rows;?> вместе! и никак не удалить!
     
  11. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    он берется из $result - попробуйте изменить цикл:
    Код (PHP):
    1. function renderElement($elem)



    т.к. потом идет:
    Код (CODE):
    1. function sendEmail($result,$params){


    Я бы попробовал изменить:
    Код (PHP):
    1. case 'email':
    2.                 $onchange = @$elem->onchange;
    3.                 if(count($elem->requests)) $default = $elem->requests[0];
    4.                 $attribs = array();
    5.                 $attribs[] = 'name="'.$name.'"';
    6.                 $attribs[] = 'id="'.$id.'"';
    7.                 if($class) $attribs[] = 'class="'.$class.'"';
    8.                 if($onchange) $attribs[] = 'onchange="'.$onchange.'"';
    9.                 if($placeholder) $attribs[] = 'placeholder="'.$placeholder.'"';
    10.                 $result.= '<input type="email" '.implode(' ',$attribs).' value="'.htmlspecialchars($default).'" />';


    на

    Код (PHP):
    1. case 'email':
    2.                 $onchange = @$elem->onchange;
    3.                 if(count($elem->requests)) $default = $elem->requests[0];
    4.                 $attribs = array();
    5.                 $attribs[] = 'name="'.$name.'"';
    6.                 $attribs[] = 'id="'.$id.'"';
    7.                 if($class) $attribs[] = 'class="'.$class.'"';
    8.                 if($onchange) $attribs[] = 'onchange="'.$onchange.'"';
    9.                 if($placeholder) $attribs[] = 'placeholder="'.$placeholder.'"';
    10.                 $noecho.= '<input type="email" '.implode(' ',$attribs).' value="'.htmlspecialchars($default).'" />';


    Если ругнется - то

    Код (PHP):
    1. function renderElement($elem){
    2.         $result = $elem->code;


    добавьте:

    Код (PHP):
    1. function renderElement($elem){
    2.         $result = $elem->code;
    3.         $noecho = $elem->code;
     
  12. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    а в каком это файле?
     
  13. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    Код (CODE):
    1. simpleform2.class.php
     
  14. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    вот все что в нем есть, того что вы написали там нет
    Код (PHP):
    1. <?php
    2.  
    3.             case 'text':
    4.                 $onchange = @$elem->onchange;
    5.                 if(count($elem->requests)) $default = $elem->requests[0];
    6.                 $attribs = array();
    7.                 $attribs[] = 'name="'.$name.'"';
    8.                 $attribs[] = 'id="'.$id.'"';
    9.                 if($class) $attribs[] = 'class="'.$class.'"';
    10.                 if($onchange) $attribs[] = 'onchange="'.$onchange.'"';
    11.                 if($placeholder) $attribs[] = 'placeholder="'.$placeholder.'"';
    12.                 $result.= '<input type="text" '.implode(' ',$attribs).' value="'.htmlspecialchars($default).'" />';
    13.             break;
    14.  
    15.             case 'textarea':
    16.                 $onchange = @$elem->onchange;
    17.                 if(count($elem->requests)) $default = $elem->requests[0];
    18.                 $attribs = array();
    19.                 $attribs[] = 'name="'.$name.'"';
    20.                 $attribs[] = 'id="'.$id.'"';
    21.                 if($class) $attribs[] = 'class="'.$class.'"';
    22.                 if($onchange) $attribs[] = 'onchange="'.$onchange.'"';
    23.                 if($placeholder) $attribs[] = 'placeholder="'.$placeholder.'"';
    24.                 $result.= '<textarea '.implode(' ',$attribs).' >'.htmlspecialchars($default).'</textarea>';
    25.             break;
    26.             case 'select':
    27.                 $multi = @$elem->multiple;
    28.                 $onchange = @$elem->onchange;
    29.                 $result = '<select'.($multi?' multiple="multiple"':'').' name="'.$name.($multi?'[]':'').'" id="'.$id.'"'.($class?' class="'.$class.'"':'').($onchange?' onchange="'.$onchange.'"':'').'>'.$result;
    30.                 foreach($elem->options as $option){
    31.                     $sel = '';
    32.                     if($option->selected || (count($elem->requests)&&in_array($option->value,$elem->requests))) $sel = ' selected="selected"';
    33.                     $optionCode = '<option value="'.$option->value.'"'.$sel.'>'.$option->label.'</option>';
    34.                     $result = str_replace($option->code,$optionCode,$result);
    35.                 }
    36.                 $result.= '</select>';
    37.             break;
    38.             case 'radio':
    39.                 foreach($elem->options as $option){
    40.                     $id = md5($name.'_'.$option->label);
    41.                     $onclick = @$option->onclick;
    42.                     $sel = '';
    43.                     if($option->selected || (count($elem->requests)&&in_array($option->value,$elem->requests))) $sel = ' checked="checked"';
    44.                     $optionCode = '<input type="radio" name="'.$name.'" id="'.$id.'" value="'.$option->value.'"'.($class?' class="'.$class.'"':'').($onclick?' onclick="'.$onclick.'"':'').$sel.' /><label for="'.$id.'">'.$option->label.'</label>';
    45.                     $result = str_replace($option->code,$optionCode,$result);
    46.                 }
    47.             break;
    48.             case 'button':
    49.                 $default = @$elem->value;
    50.                 $onclick = @$elem->onclick;
    51.                 $result.= '<input type="button"'.($class?' class="'.$class.'"':'').($onclick?' onclick="'.$onclick.'"':'').' value="'.$default.'" />';
    52.             break;
    53.             case 'submit':
    54.                 $default = @$elem->value;
    55.                 $result.= '<input'.($class?' class="'.$class.'"':'').' type="submit" value="'.$default.'" />';
    56.             break;
    57.             case 'reset':
    58.                 $default = @$elem->value;
    59.                 $onclick = @$elem->onclick;
    60.                 $result.= '<input type="reset"'.($name?' name="'.$name.'"':'').($class?' class="'.$class.'"':'').($onclick?' onclick="'.$onclick.'"':'').' value="'.$default.'" />';
    61.             break;
    62.             case 'checkbox':
    63.                 $default = @$elem->value;
    64.                 $single = false;
    65.                 if(count($elem->options)==0){
    66.                     $elem->options = array($elem);
    67.                     $single = true;
    68.                 }
     
  15. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
    ах да) я под себя писал вагончик с тележкой)

    Добавьте по аналогии email

    в форме в модуле укажите тип:
    Код (CODE):
    1. <p>{element label="Email" class="form-field" type="email" required="required" error="Введите ваш e-mail" /}</p>
     
  16. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    а как теперь сделать чтобы пользователь мог ввести email куда отправить?
     
  17. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 464
    Симпатии:
    305
    Пол:
    Мужской
  18. AlexChervon
    Offline

    AlexChervon Пользователь

    Регистрация:
    14.11.2015
    Сообщения:
    57
    Симпатии:
    0
    Пол:
    Мужской
    хех.. а там теперь не указать в настройках модуля переменную ))
     

Поделиться этой страницей

Загрузка...