Jump to content
Sign in to follow this  
Skrove

Ошибка 500 После Заполнения Связаться С Нами

Recommended Posts

при проверке обратной связи, вожу: почту, имя, текст. Жмакаю применить, несколько секунд тупит, затем пишет страница недоступна.
Где косяк? где копать, в логах ничего нет

Share this post


Link to post
Share on other sites
19 минут назад, Skrove сказал:

при проверке обратной связи, вожу: почту, имя, текст. Жмакаю применить, несколько секунд тупит, затем пишет страница недоступна.
Где косяк? где копать, в логах ничего нет

Смотреть запросы к бд и логику - где-то там есть ошибка. У меня такое бывало, когда в запрос попадала неэкранированная кавычка.

Share this post


Link to post
Share on other sites

лог ошибок сервера. Там и смотреть причину 500 ответа

Share this post


Link to post
Share on other sites

скорее проблема с отправкой почты

500 это не ошибка а статус ответа сервера

ошибку надо отобразить или найти https://store.pe-art.ru/500

Share this post


Link to post
Share on other sites
12 минут назад, ashap сказал:

скорее проблема с отправкой почты

500 это не ошибка а статус ответа сервера

ошибку надо отобразить или найти https://store.pe-art.ru/500

хороший совет. но блин стока всего повылазило...ошибку 500 исправил, теперь следующее вылазит:

Warning: explode() expects parameter 2 to be string, array given in /home/s/user/домен/public_html/catalog/controller/information/contact.php on line 33Warning: Invalid argument supplied for foreach() in /home/s/user/домен/public_html/catalog/controller/information/contact.php on line 35Warning: Cannot modify header information - headers already sent by (output started at /home/s/user/домен/public_html/catalog/controller/startup/error.php:39) in /home/s/user/домен/public_html/system/library/response.php on line 17

Share this post


Link to post
Share on other sites

закомментировал это в контактах: 

// Send to additional alert emails if new account email is enabled 
        //    $emails = explode(',', $this->config->get('config_mail_alert'));

        //    foreach ($emails as $email) {
        //        if (utf8_strlen($email) > 0 && preg_match('/^[^\@]+@.*.[a-z]{2,15}$/i', $email)) {
        //            $mail->setTo($email);
        //            $mail->send();
        //        }
        //    }

после этого нет ошибок, но письма не доходят

Share this post


Link to post
Share on other sites

Письма о заказах приходят?
проверять настройки почты

Share this post


Link to post
Share on other sites
18 часов назад, thentru сказал:

Письма о заказах приходят?
проверять настройки почты

 неа

Share this post


Link to post
Share on other sites
22 часа назад, Skrove сказал:

хороший совет. но блин стока всего повылазило...ошибку 500 исправил, теперь следующее вылазит:

Warning: explode() expects parameter 2 to be string, array given in /home/s/user/домен/public_html/catalog/controller/information/contact.php on line 33Warning: Invalid argument supplied for foreach() in /home/s/user/домен/public_html/catalog/controller/information/contact.php on line 35Warning: Cannot modify header information - headers already sent by (output started at /home/s/user/домен/public_html/catalog/controller/startup/error.php:39) in /home/s/user/домен/public_html/system/library/response.php on line 17

Смотрите у вас написано, что вы передаете в функцию explode() массив, а нужно передавать строку.

Далее, ясен пень у вас тоже будет ошибка потому что в foreach() нужно передавать массив или объект, а вы передаете туда результат отработки explode(), сейчас это у вас ошибка.

 

У вас в конфиге $this->config->get('config_mail_alert') - вот здесь, один e-mail или несколько, если несколько то как они у вас хранятся, как строка или как массив? Если строка, то вы уверены, что у них разделитесь запятая ",", которую вы используете в explode().

 

 

19 часов назад, Skrove сказал:

закомментировал это в контактах: 

// Send to additional alert emails if new account email is enabled 
        //    $emails = explode(',', $this->config->get('config_mail_alert'));

        //    foreach ($emails as $email) {
        //        if (utf8_strlen($email) > 0 && preg_match('/^[^\@]+@.*.[a-z]{2,15}$/i', $email)) {
        //            $mail->setTo($email);
        //            $mail->send();
        //        }
        //    }

после этого нет ошибок, но письма не доходят

Конечно письма приходить не будут, вы же закомментировали отправку писем.

 

Share this post


Link to post
Share on other sites
39 минут назад, niger сказал:

Смотрите у вас написано, что вы передаете в функцию explode() массив, а нужно передавать строку.

Далее, ясен пень у вас тоже будет ошибка потому что в foreach() нужно передавать массив или объект, а вы передаете туда результат отработки explode(), сейчас это у вас ошибка.

 

У вас в конфиге $this->config->get('config_mail_alert') - вот здесь, один e-mail или несколько, если несколько то как они у вас хранятся, как строка или как массив? Если строка, то вы уверены, что у них разделитесь запятая ",", которую вы используете в explode().

 

 

Конечно письма приходить не будут, вы же закомментировали отправку писем.

 

уважаемый, не подскажите что нужно прописать, чтоб работало. нет необходимости отправлять на несколько ящиков, достаточно 1-го, но чтоб работало

Share this post


Link to post
Share on other sites

заменил файл contact.php на оригинальный, заработало, но чет не пойму в настройках почты указан admin@mail.ru, а приходит на noreply@mail.ru.

разобрался - почту берет с вкладки магазин

Edited by Skrove

Share this post


Link to post
Share on other sites
54 минуты назад, niger сказал:

Смотрите у вас написано, что вы передаете в функцию explode() массив, а нужно передавать строку.

Далее, ясен пень у вас тоже будет ошибка потому что в foreach() нужно передавать массив или объект, а вы передаете туда результат отработки explode(), сейчас это у вас ошибка.

 

У вас в конфиге $this->config->get('config_mail_alert') - вот здесь, один e-mail или несколько, если несколько то как они у вас хранятся, как строка или как массив? Если строка, то вы уверены, что у них разделитесь запятая ",", которую вы используете в explode().

 

 

Конечно письма приходить не будут, вы же закомментировали отправку писем.

 

мои глубочайшие извинения, все работает, просто почему-то закидывает в спам если закомментировать:

// Send to additional alert emails if new account email is enabled 
        //    $emails = explode(',', $this->config->get('config_mail_alert'));

        //    foreach ($emails as $email) {
        //        if (utf8_strlen($email) > 0 && preg_match('/^[^\@]+@.*.[a-z]{2,15}$/i', $email)) {
        //            $mail->setTo($email);
        //            $mail->send();
        //        }
        //    }

всем спасибо

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
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  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.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.