Все как всегда просто оказалось))) Спасибо за вашу помощь! PHP: $mail->setText($this->request->post['enquiry'] . $this->request->post['country']); Банально...однако))
Последний вопрос возник: Нужно отсылать на мейл данные с чекбокса, но не смотря на PHP: if (isset($this->request->post['noprinter'])) { $data['noprinter'] = $this->request->post['noprinter']; } else { $data['noprinter'] = ''; } Я получаю Notice: Undefined index: noprinter В чем может быть причина и как с этим бороться?
Внимательно посмотреть и подумать. Где получаете ошибку? Правильно ее выводите? Вконтроллере в нужном месте вставили ? итд? Или будем еще на 3 страницы переписываться )))))
В том то и дело, не хотел сюда писать пока уже окончательно не уперся... Это твиг: HTML: <input type="checkbox" id="noprinter" name="noprinter" value="{{ noprinter }}"> <label for="input-noprinter">{{ entry_noprinter }}</label> Это контроллер: PHP: if (isset($this->request->post['noprinter'])) { $data['noprinter'] = $this->request->post['noprinter']; } else { $data['noprinter'] = ''; } В контроллере это находится там же где и все условия, не мучайте, подскажите что делать ))
Notice: Undefined index: noprinter in /home/web2testuser/public_html/opencart/catalog/controller/information/contact.php on line 23Warning: Cannot modify header information - headers already sent by (output started at /home/web2testuser/public_html/opencart/catalog/controller/startup/error.php:34) in /home/web2testuser/public_html/opencart/system/library/response.php on line 36
Опять таки.. с формы не приходит в пост запросе ваш noprinter Почему не отправляется? Нужно смотреть по месту.
В том то и дело, что в почту я получаю все данные, но получаю предупреждение что данные переменные не определены, определяю - PHP: if (isset($this->request->post['noprinter']) && !empty($this->request->post['noprinter'])) { $data['noprinter'] = $this->request->post['noprinter']; } else { $data['noprinter'] = ''; } Продолжаю получать такое же предупреждение
Если это убираю всеравно выдает ошибку. У меня есть подозрения в плане вот этой части HTML: <input type="checkbox" id="noprinter" name="noprinter" value="{{ noprinter }}"> Может быть в твиге надо прописывать в value noprinter вместо переменной из языкового файла? PHP: if (isset($this->request->post['noprinter'])) { $data['noprinter'] = 'I don't have printer'; } else { $data['noprinter'] = ''; } и добавить к твигу <input name="noprinter" value="0" type="hidden">
В общем если чекбокс пустой и в value ничего нет и при этом есть проверка он выдает ошибку, версия со скрытым чекбоксом вообще блокирует вариант его выбрать...
Ребят это я просто тут так написал... код выглядит так: PHP: if (isset($this->request->post['noprinter'])) { $data['noprinter'] = $this->request->post['noprinter']; } else { $data['noprinter'] = ''; } Отсюда с языкового файла вызываю: PHP: $_['entry_noprinter'] = "I don't have printer"; А в твиге: HTML: <input type="checkbox" id="noprinter" name="noprinter" value="{{ entry_noprinter }}"> <label for="input-noprinter">{{ entry_noprinter }}</label> Если чекбокс не отмечен получаю - Notice: Undefined index: noprinter in /home/web2testuser/public_html/opencart/catalog/controller/information/contact.php on line 23Warning: Cannot modify header information - headers already sent by (output started at /home/web2testuser/public_html/opencart/catalog/controller/startup/error.php:34) in /home/web2testuser/public_html/opencart/system/library/response.php on line 36 Это код отправки тела имейла - PHP: $mail->setText($this->request->post['enquiry'] . $this->request->post['country'] . $this->request->post['zip'] . $this->request->post['link'] . $this->request->post['printer'] . $this->request->post['noprinter'] . $this->request->post['size'] . $this->request->post['hpress']);
В данном случае у меня стоят другие кавычки...но речь не об этом. Ошибка которую я получаю никак не связана с этим... П.С. Специально для душевного спокойствия проверил с заэкраненными апострофами...
Если получаете Undefined index: noprinter Значит не находит индекс в массиве пост запроса, а именно нет там noprinter т.е нет там этого Код: $this->request->post['noprinter'] На 23-й строке что у вас? Это?? Если да, то почему проходит проверка, на отсутствие.. непонятно. PHP: if (isset($this->request->post['noprinter'])) { Я уже неоднократно повторял что пользоваться нужно инспектором, что нужен демо сайт, нужно знать как у вас работает. А так кусками и догадками.. мы тут может еще 4 страницы написать.
Так я же послал вам ссылку на демо сайт... http://test2.co.il/opencart/index.php?route=information/contact