krizzu Posted July 29, 2014 Share Posted July 29, 2014 Witam serdecznie Mam zainstalowany sklepik na home.pl i ostatnio przestały dochodzić maile, do wysyłania maili sklep uzywa funkcji mail() jedak jak się dowiedziałem ostatnio home wprowadził dodatkowy parametr do funkcji mail() aby ograniczyć wysyłanie spamu. https://pomoc.home.pl/komunikaty/1067 Czy ktoś mi może podpowiedzieć do jaki plik (i najlepiej w jaki sposó zmodyfikować tak aby wysyłanie maili działało. Z góry dziękuję za pomoc. Link to comment Share on other sites More sharing options...
1 palcerzak Posted October 22, 2014 Share Posted October 22, 2014 Dzięki za info będę próbował Miałem ten problem. Ustaw ten sam adres e-mail w preferencje/kontakty sklepu i niżej preferencje/dane kontaktowe. Wszysko działa nawet na home.pl W zakładce zaawansowane adrees e-mail ustaw też ten sam co wyżej, a w ustawieniach: Użyj funkcji mail() w PHP (zalecane; działa w większości przypadków) pozdrawiam Piotrek Link to comment Share on other sites More sharing options...
0 endriu107 Posted July 29, 2014 Share Posted July 29, 2014 Najlepiej to skorzystaj z ustawień SMTP. Link to comment Share on other sites More sharing options...
0 vekia Posted July 29, 2014 Share Posted July 29, 2014 a możesz wyjaśnić o co chodzi z tym dodatkowym parametrem? klasa do zmiany to klasa Mail (classes/Mail.php) Link to comment Share on other sites More sharing options...
0 Yabber Posted July 29, 2014 Share Posted July 29, 2014 WAŻNE! Adres e-mail nadawcy zawarty w nagłówku wiadomości musi istnieć w ramach konta, do którego nastąpiła autoryzacja. W przeciwnym wypadku wysyłka wiadomości nie zostanie zrealizowana. Dotyczy to programów pocztowych oraz skryptów, które obsługują wysyłkę wiadomości e-mail. I po ptakach z mailami spoza home.pl Link to comment Share on other sites More sharing options...
0 krizzu Posted July 29, 2014 Author Share Posted July 29, 2014 (edited) a możesz wyjaśnić o co chodzi z tym dodatkowym parametrem? klasa do zmiany to klasa Mail (classes/Mail.php) mail($to, $subject, $message, $headers, "-f [email protected]"); Wydaje mi się, że chodzi o -f dodane przed adresem ? Najlepiej to skorzystaj z ustawień SMTP. Próbowałeś skonfigurować SMTP home.pl na preście, cały czas wywala mi błąd w konfiguracji.... Sprawa jest lipna bo jeśli nikt nie dostaje maili to albo nie realizuje zamówienia i idzie gdzie indziej albo próbuje jeszcze raz.... ale z doświadczenia wiem że to pierwsze Edited July 29, 2014 by krizzu (see edit history) Link to comment Share on other sites More sharing options...
0 endriu107 Posted July 29, 2014 Share Posted July 29, 2014 Próbowałeś skonfigurować SMTP home.pl na preście, cały czas wywala mi błąd w konfiguracji.... Oczywiście że tak, może podaj jak ty to konfigurujesz żebyśmy wiedzieli gdzie leży błąd. Link to comment Share on other sites More sharing options...
0 krizzu Posted July 29, 2014 Author Share Posted July 29, 2014 Oczywiście że tak, może podaj jak ty to konfigurujesz żebyśmy wiedzieli gdzie leży błąd. Do tego celu założyłem sobie specjalnego maila np. [email protected] Domena adresu email: mojadomena.pl Serwer SMTP: - tutaj próbowałem mojserwer.home.pl lub też mojadomena.pl (takie ustawienie działa w thunderbirdzie) Użytkownik SMTP: [email protected] lub automat Hasło SMTP: proste hasło litery + cyfry Szyfrowanie: SSL Port: 465 Link to comment Share on other sites More sharing options...
0 endriu107 Posted July 30, 2014 Share Posted July 30, 2014 Czyli dalej chcesz używać home-a tylko jako SMTP? Najlepiej zrób sobie konto na gmailu i ustaw tak: Domena adresu email: [email protected] Serwer SMTP: smtp.gmail.com Użytkownik SMTP: [email protected] Hasło SMTP: proste hasło litery + cyfry Szyfrowanie: SSL Port: 465 Przy takim ustawieniu maile bedzie wysyłał gmail ale jako Twój podany email, ten pierwszy od góry w ustawieniach. Link to comment Share on other sites More sharing options...
0 vekia Posted July 30, 2014 Share Posted July 30, 2014 opiekowałem się sklepem który kiedyś przekroczył limity wysyłania wiadomości w google darmowe konta gmail mają ograniczenia, na chwilę obecną nie wiem jak duże (ale myślę ,że google podpowie) - w każdym razie sklep zrobił promocje na grouponie, na raz zwaliło się do sklepu prawie 300 osób na zakupy, i gmail nie uniósł blokując możliwość wysyłania wiadomości Link to comment Share on other sites More sharing options...
0 krizzu Posted July 30, 2014 Author Share Posted July 30, 2014 (edited) Tylko to nie jest darmowe konto - to jest skrzynka założona na płatnym serwerze. Wg zaleceń zmodyfikowałem plik ../tools/swift/Swift/plugin/MailSend.php public function __construct($params="-f %s") { $this->setAdditionalParams($params); $this->setOS(PHP_OS); } gdzie -f to dodatkowy parametr oraz dodatkowo ../tools/swift/Swift/Message.php $this->setFrom("[email protected]"); przy wysyłaniu testowego maila dalej dostaje Błąd: proszę sprawdzić konfiguracjęSending failed using mail() as PHP's default mail() function returned boolean FALSE. Edited July 30, 2014 by krizzu (see edit history) Link to comment Share on other sites More sharing options...
0 PrestaShark Posted September 26, 2014 Share Posted September 26, 2014 Znów "domek.pl" ....Z dnia na dzień wywaliło formularz kontatktowy w sporym sklepie Posypały się gromy od klientów że składali zapytania i nie otrzymywali żadnej odpowiedzi. Teraz wszystko jasne. Dziękuję! Link to comment Share on other sites More sharing options...
0 san_merah Posted September 29, 2014 Share Posted September 29, 2014 (edited) Znów "domek.pl" .... Z dnia na dzień wywaliło formularz kontatktowy w sporym sklepie Posypały się gromy od klientów że składali zapytania i nie otrzymywali żadnej odpowiedzi. Teraz wszystko jasne. Dziękuję! To akurat nie ma nic wspólnego z prestą, mialem tak ostatio na osc. Home.pl zmienili ustawienia antyspamowe tak, ze nie dochodziło nic co było wysłane przez formularz kontaktowy. Edited September 29, 2014 by san_merah (see edit history) Link to comment Share on other sites More sharing options...
0 DarK666666 Posted October 20, 2014 Share Posted October 20, 2014 Mam podobny problem, z tym że do tej pory wszystkie maile były wysyłane przez smtp. Do czasu kiedy home zmienił ustawienia antyspamowe, teraz żaden mail z formularza kontaktowego nie dochodzi do obsługi. Czy komuś udało się zmusić preste na home.pl do współpracy? Link to comment Share on other sites More sharing options...
0 san_merah Posted October 20, 2014 Share Posted October 20, 2014 Daj sobie spokój z home pod prestę, szkoda nerwów. Link to comment Share on other sites More sharing options...
0 endriu107 Posted October 20, 2014 Share Posted October 20, 2014 Mi się udało, ale fakt home sie nie nadaje. Problem z mailami masz ponieważ wysyłasz maile sam do siebie czyli z swojej domeny na swoją, możesz tego uniknąć korzystając z zewnętrznego konta smtp np. gmaila. Link to comment Share on other sites More sharing options...
0 DarK666666 Posted October 20, 2014 Share Posted October 20, 2014 Dzięki za info będę próbował Link to comment Share on other sites More sharing options...
0 DarK666666 Posted October 22, 2014 Share Posted October 22, 2014 U mnie nie zadziałało, z tym że nie mam czegość takiego jak preferencje/kontakty sklepu tylko klienci/kontakty. Moja wersja presty to 1.5.6.1 Link to comment Share on other sites More sharing options...
0 palcerzak Posted October 22, 2014 Share Posted October 22, 2014 U mnie nie zadziałało, z tym że nie mam czegość takiego jak preferencje/kontakty sklepu tylko klienci/kontakty. Moja wersja presty to 1.5.6.1 zerknij na wersję 1.6 http://demo.prestashop.com/pl/?view=back i znajdź w swojej wersji: PREFERENCJE / KONTAKTY SKLEPU przewiń stronę w dół tam jest pole wypwłnine adresem [email protected]. potem przejdz do: ZAAWANSOWANE / ADRES E-MAIL i tu wybierz Użyj funkcji mail() w PHP (zalecane; działa w większości przypadków) powodzenia Link to comment Share on other sites More sharing options...
0 sheyker Posted October 28, 2014 Share Posted October 28, 2014 Witam. Nie moge dojść do ładu z tymi mailami. Jak to możliwe to prosiłbym o dokładne opisanie problemu. W którym pliku dokładnie i miejscu w kodzie należy wprowadzić zmiany. Link to comment Share on other sites More sharing options...
0 endriu107 Posted October 28, 2014 Share Posted October 28, 2014 Należy przerobić ContactController aby na home maile działały poprawnie. Link to comment Share on other sites More sharing options...
0 _des_ Posted December 11, 2014 Share Posted December 11, 2014 U mnie nie zadziałało, z tym że nie mam czegość takiego jak preferencje/kontakty sklepu tylko klienci/kontakty. Moja wersja presty to 1.5.6.1 Miałem ten problem. Ustaw ten sam adres e-mail w preferencje/kontakty sklepu i niżej preferencje/dane kontaktowe. Wszysko działa nawet na home.pl W zakładce zaawansowane adrees e-mail ustaw też ten sam co wyżej, a w ustawieniach: Użyj funkcji mail() w PHP (zalecane; działa w większości przypadków) pozdrawiam Piotrek U mnie też nie chciało na home.pl działać, ale wg tego co pisze palcerzak udało mi się w końcu odpalić wysyłanie maili. Mam preste 1.5.6.2. Link to comment Share on other sites More sharing options...
0 Giraffex Posted December 12, 2014 Share Posted December 12, 2014 I po ptakach z mailami spoza home.pl Z drugie strony mądrze i bezpiecznie. Nie spodziewałem się tego po home.pl 1 Link to comment Share on other sites More sharing options...
0 bienio Posted February 19, 2015 Share Posted February 19, 2015 (edited) Witam,mam podobny problem z home.pl i nie dochodzeniem maili. Wiem że mam edytować nagłówek FROM i wstawić tam adres e-mail pochodzący z home, oraz reply-to w którym będzie podawany adres e-mail nadawcy wiadomości.Czy ktoś może podpowiedzieć czy w tym miejscu (zaznaczyłem /////) to edytować i jak sformułować kod? Jeżeli to nie ten fragment kodu mogę wrzucić resztę. class ContactControllerCore extends FrontController { public $php_self = 'contact-form.php'; public $ssl = true; public function preProcess() { parent::preProcess(); if (self::$cookie->isLogged()) { self::$smarty->assign('isLogged', 1); $customer = new Customer((int)(self::$cookie->id_customer)); if (!Validate::isLoadedObject($customer)) die(Tools::displayError('Customer not found')); $products = array(); $orders = array(); $getOrders = Db::getInstance()->ExecuteS(' SELECT id_order ///// FROM '._DB_PREFIX_.'orders WHERE id_customer = '.(int)$customer->id.' ORDER BY date_add'); foreach ($getOrders as $row) { $order = new Order((int)$row['id_order']); $date = explode(' ', $order->date_add); $orders[(int)$row['id_order']] = Tools::displayDate($date[0], self::$cookie->id_lang); $tmp = $order->getProducts(); foreach ($tmp as $key => $val) $products[$val['product_id']] = $val['product_name']; } Edited February 19, 2015 by bienio (see edit history) Link to comment Share on other sites More sharing options...
0 two Posted April 26, 2015 Share Posted April 26, 2015 Też miałem ten problem i pomogło przerobienie pliku ContactController.php który się znajduję: controllers/front/ContactController.php. W lini numer 196 usunąłem $from i w to miejsce wpisałem adres mailowy sklepu który jest na domenie home.pl. Oczywiście też ten adres trzeba wpisać w Preście w Zaawansowane/Adresy e-mail. Poniżej zamieszam przerobioną linijkę kodu. U mnie ładnie działa. $var_list, $contact->email, $contact->name, '[email protected]', ($customer->id ? $customer->firstname.' '.$customer->lastname : ''), 1 Link to comment Share on other sites More sharing options...
0 bienio Posted April 28, 2015 Share Posted April 28, 2015 Znalazłem to w pliku, w troszeczkę innym miejscu ale poprawiłem i działa Dzięki serdeczne Link to comment Share on other sites More sharing options...
0 design4VIP Posted April 28, 2015 Share Posted April 28, 2015 home.pl == a to dopiero poczatek problemow Link to comment Share on other sites More sharing options...
0 PrestaShark Posted April 28, 2015 Share Posted April 28, 2015 home.pl == a to dopiero poczatek problemow Wielkim fanem domku.pl nie jestem ale Presta działa bez problemu (w końcu zdali sobie sprawę aby jej nie sabotować? ) Link to comment Share on other sites More sharing options...
0 san_merah Posted April 28, 2015 Share Posted April 28, 2015 A od kiedy to niby dział bez problemu? Link to comment Share on other sites More sharing options...
0 design4VIP Posted April 29, 2015 Share Posted April 29, 2015 (edited) Wielkim fanem domku.pl nie jestem ale Presta działa bez problemu (w końcu zdali sobie sprawę aby jej nie sabotować? ) nie uwierze, ze po instalacji ot tak wsyzstko dziala poprawnie bez zmiany paru rzeczy.... niestety 'domek' jest na takiej konfigracji, ze nie ma moliwosci, zeby od pierwszego presta ruszyla, a przede wszystkim dzialala sprawnie w 100%. drugie, ciezko sie doprosic zeby zmienili tak trywialne rzeczy jak np. max_input_vars, a bez tego zapomnijmy o prostym tlumaczeniu sklepu, allow_memory - zpomnijmy o wiekszej ilosci kategorii czy sporej ilosci produktow, klientow, ogolnie ruchu na stornie. Edited April 29, 2015 by design4VIP (see edit history) Link to comment Share on other sites More sharing options...
0 PrestaShark Posted April 29, 2015 Share Posted April 29, 2015 Co innego jak za sklep zabiera się ktoś niedoświadczony i kupuje sobie sprawdzony "markowy" hosting w "promocji" i narzeka, że tamto siamto nie działa, a co innego jak za pracę zabiera się specjalista, który nie ma wyjścia i musi wykorzystać środki jakimi dysponuje klient z takich a nie innych przyczyn. 1) max_input_vars, a tym samym tłumaczenia "z admina" - nie są żadnym problemem a wszystko udokumentowane jest jak to osiągnąć samodzielnie (nie trzeba sie nikogo prosić - a i tak sami tego nie zrobią), 2) zmiana .htaccess w modules, themes to już norma i nie stanowi przeszkody w dalszym działaniu sklepu. Nie jestem fanem jak wspomniałem i uważam że support pozostawia bardzo złe wrażenie (ile ja żółci tam wylałem to głowa mała), ale jeśli chodzi o samą pracę i stabilność ustawionego sklepu (nie jednego...) nie mogę mieć od jakiegoś czasu żadnych zastrzeżeń. Podam pewien cytat: "Jeśli ktoś chce znajdzie sposób. Jeśli ktoś nie chce znajdzie powód" Link to comment Share on other sites More sharing options...
0 design4VIP Posted April 29, 2015 Share Posted April 29, 2015 no i poruszyles dosc istatotna kwestie... "kowalski" kontra specjalista.... ilu jest specjalistow a ilu "kowalskich" starajacych sie postawic sklep jak najtanszym kosztem (najlepiej za darmo) poswiecajaych swoj wlasny czas... to dla nich jest to forum co do punktow: 1. stawialem juz sklepy na wielu serwerach i zazwyczaj nie bylo problemu ze zmiania wposmnianych wartosci przez support lub wyslanie przynajmniej informacji gdzie i co nalezy zmienic samemu. w home, ale nie ma w ogole odpowiedzi albo "nie da sie" - "zaplaciles na 3 lata to teraz sie martw sam, widzialy galy co braly" - to powinni miec wielkimi literami na stronie glownej jako motto przewodnie 2. z tym htacces to tez nie takie "wprost" dla "Kowalskiego". po pierwsze trzeba wiedziec co to za plik i do czego sluzy, po drugie trzeba wiedziec co i gdzie wprowdzic. owszem, zaraz napiszesz, ze bylo to tyle razy pisane juz na forach... owszem, ale tez trzeba wiedziec co i gdzie szukac. a to wcale nie jest takie oczywiste dla poczatkujacego. sam jak psizesz straciles wiele nerwow na poczatku, wiec sam powiniens teraz klaniac sie pytajacym tutaj sam to przechodziles, a ze przeszedles to teraz jestes "Panem" "Kowalki" jak przez to przebrnie tez nim bedzie i miejmy nadzieje, na przyszlosc bedzie dzielil sie rowniez swoja wiedza nie twierdze, ze nie da sie postawic Presta (niewielkiego) na home, da sie, ale wymaga to paru zmian i dostosowan presta do specyficznej konfiguracji tego serwera: htacces, dopisanie zwiekszenia wartosci zmiennych czy wpisania "na twardo" w kontroler adresu email do wysylki.... a to dopiero poczatek Link to comment Share on other sites More sharing options...
0 OryginalDekeR Posted May 8, 2015 Share Posted May 8, 2015 Przetestowałem wszystkie porady z tego wątku, nadal dla mail() otrzymuję: Błąd: proszę sprawdzić konfiguracjęSending failed using mail() as PHP's default mail() function returned boolean FALSE. zaś dla SMTP czy to home.pl czy gmail.com: The SMTP connection failed to start [...] : fsockopen returned Error Number 0 and Error String '' Wersja PrestaShop 1.6.0.14 Wersja PHP 5.3.29 Wersja MySQL 5.5.41 Link to comment Share on other sites More sharing options...
0 PrestaShark Posted May 8, 2015 Share Posted May 8, 2015 Poprawka w trzech plikach. Działa w 1.5.6.2 (w 1.6 nie sprawdzałem) na serwerze home.pl klasy podstawowej (nie biznesowej) /tools/swift/Swift/Plugin/MailSend.php /tools/swift/Swift/Message.php /tools/swift/Swift.php /tools/swift/Swift/Plugin/MailSend.phpZ:$headers = $headers->build();Na:$headers = $headers->build();$params = "";/tools/swift/Swift/Message.phpZ: $this->setFrom("");Na: $this->setFrom("twó[email protected]");/tools/swift/Swift.phpZ:if (!($has_reply_to = $message->getReplyTo())) $message->setReplyTo($from);Na: if (!($has_reply_to = $message->getReplyTo())) $message->setReplyTo($from);if (!$has_reply_to[0]) $message->setReplyTo($from->getAddress()); Link to comment Share on other sites More sharing options...
0 OryginalDekeR Posted May 8, 2015 Share Posted May 8, 2015 (edited) @PrestaShark - > wyedytowałem wszystkie jak wskazałeś, niestety nadal obie opcje wysyłki zwracają powyższe błędy :/ Edited May 8, 2015 by OryginalDekeR (see edit history) Link to comment Share on other sites More sharing options...
0 PrestaShark Posted May 8, 2015 Share Posted May 8, 2015 U mnie też od razu to nie zaśmigało. Odśwież przegladarkę (ew użyj innej z jakiej nie używasz), przeloguj się do admina i zobacz czy testowy email się wysyła prawidłowo (z poziomu panelu administracyjnego w konfiguracji email) Link to comment Share on other sites More sharing options...
0 OryginalDekeR Posted May 12, 2015 Share Posted May 12, 2015 Funkcja mail() już działa w mojej preście, tylko nie wiem czy w zwązku ze zmianami w plikach, czy jednak home podziałał, bo dostałem od nich e-mail, że odświeżyli konfigurację serwera i powinno być ok Link to comment Share on other sites More sharing options...
0 krizzu Posted December 15, 2015 Author Share Posted December 15, 2015 Witam Od jakiegoś czasu mam analogiczny problem funkcja mail() wysyła mail testowy, jednak zamówienia i potwierdzenia nie przychodzą.. Nie mogę skonfigurować skrzynki smtp z home.pl przy zalecanych ustawieniach. Działam na wersji 1.6 Link to comment Share on other sites More sharing options...
0 PMaster Posted December 16, 2015 Share Posted December 16, 2015 Tak przy okazji kochani forumowicze Tak na logikę (oczywiście moja "subiektywna" opinia dotyczy w/w problemu"): - kupujesz serwer (pierwszy rok w promocji później różnie bywa) - płacisz za niego - chcesz prowadzić na nim sklep Prestashop - wiesz, że będą problemy (już po samej instalacji jak i z pocztą) - w kilka dni po instalacji zaczynasz szukać "cudownych" rozwiązań ponieważ dziwnym trafem Twój sklep nie chce prawidłowo działać - tracisz nerwy. czas i ciągle szukasz, pytasz... - ludzie na tym forum oczywiście pomagają - w tym czasie administrator Twojego serwera też się pewnie zastanawia czemu zapłaciłeś mu za to żeby z "bananem" pod nosem skutecznie utrudniał Ci życie...? Stąd pytanie: po co to wszystko?????? Po co na własne życzenie i za własne pieniądze kupować sobie problemy???? - czy ktoś potrafi odpowiedzieć na to pytanie? 1 Link to comment Share on other sites More sharing options...
0 karolwild Posted December 16, 2015 Share Posted December 16, 2015 (edited) Pewno na polecaniu serwera można trochę zarobić? Stąd tylu wrobionych. Edited December 16, 2015 by karolwild (see edit history) Link to comment Share on other sites More sharing options...
0 OryginalDekeR Posted December 17, 2015 Share Posted December 17, 2015 [...]Stąd pytanie: po co to wszystko?????? [...] Od czasów pierwszych filozofów nie wiadomo, więc raczej Ci nie odpowiemy. Oczywiście, możemy wyłączyć internet i wrócić do jaskiń, nie będzie wtedy problemów z żadnym hostingiem/softem. Ja jednak wolę kodzić niż się umartwiać. 1 Link to comment Share on other sites More sharing options...
0 inspir Posted May 2, 2017 Share Posted May 2, 2017 (edited) u mnie nadal nie działa żadna z metod jaką opisujecie .nawet w tym pliku CONTACT CONTROLlER.PHP mój kod wygląda inaczej nie co od tego wyżej, może ktoś pomuc mi go zmodyfikowac. bo nie wiem co jeszcze i gdzie moge zmienić to kod: <?php /* * 2007-2016 PrestaShop * * NOTICE OF LICENSE * * This source file is subject to the Open Software License (OSL 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/osl-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 [email protected] 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 <[email protected]> * @copyright 2007-2016 PrestaShop SA * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ class ContactControllerCore extends FrontController { public $php_self = 'contact'; public $ssl = true; /** * Start forms process * @see FrontController::postProcess() */ public function postProcess() { if (Tools::isSubmit('submitMessage')) { $extension = array('.txt', '.rtf', '.doc', '.docx', '.pdf', '.zip', '.png', '.jpeg', '.gif', '.jpg'); $file_attachment = Tools::fileAttachment('fileUpload'); $message = Tools::getValue('message'); // Html entities is not usefull, iscleanHtml check there is no bad html tags. if (!($from = trim(Tools::getValue('from'))) || !Validate::isEmail($from)) { $this->errors[] = Tools::displayError('Invalid email address.'); } elseif (!$message) { $this->errors[] = Tools::displayError('The message cannot be blank.'); } elseif (!Validate::isCleanHtml($message)) { $this->errors[] = Tools::displayError('Invalid message'); } elseif (!($id_contact = (int)Tools::getValue('id_contact')) || !(Validate::isLoadedObject($contact = new Contact($id_contact, $this->context->language->id)))) { $this->errors[] = Tools::displayError('Please select a subject from the list provided. '); } elseif (!empty($file_attachment['name']) && $file_attachment['error'] != 0) { $this->errors[] = Tools::displayError('An error occurred during the file-upload process.'); } elseif (!empty($file_attachment['name']) && !in_array(Tools::strtolower(substr($file_attachment['name'], -4)), $extension) && !in_array(Tools::strtolower(substr($file_attachment['name'], -5)), $extension)) { $this->errors[] = Tools::displayError('Bad file extension'); } else { $customer = $this->context->customer; if (!$customer->id) { $customer->getByEmail($from); } $id_order = (int)$this->getOrder(); if (!(( ($id_customer_thread = (int)Tools::getValue('id_customer_thread')) && (int)Db::getInstance()->getValue(' SELECT cm.id_customer_thread FROM '._DB_PREFIX_.'customer_thread cm WHERE cm.id_customer_thread = '.(int)$id_customer_thread.' AND cm.id_shop = '.(int)$this->context->shop->id.' AND token = \''.pSQL(Tools::getValue('token')).'\'') ) || ( $id_customer_thread = CustomerThread::getIdCustomerThreadByEmailAndIdOrder($from, $id_order) ))) { $fields = Db::getInstance()->executeS(' SELECT cm.id_customer_thread, cm.id_contact, cm.id_customer, cm.id_order, cm.id_product, cm.email FROM '._DB_PREFIX_.'customer_thread cm WHERE email = \''.pSQL($from).'\' AND cm.id_shop = '.(int)$this->context->shop->id.' AND ('. ($customer->id ? 'id_customer = '.(int)$customer->id.' OR ' : '').' id_order = '.(int)$id_order.')'); $score = 0; foreach ($fields as $key => $row) { $tmp = 0; if ((int)$row['id_customer'] && $row['id_customer'] != $customer->id && $row['email'] != $from) { continue; } if ($row['id_order'] != 0 && $id_order != $row['id_order']) { continue; } if ($row['email'] == $from) { $tmp += 4; } if ($row['id_contact'] == $id_contact) { $tmp++; } if (Tools::getValue('id_product') != 0 && $row['id_product'] == Tools::getValue('id_product')) { $tmp += 2; } if ($tmp >= 5 && $tmp >= $score) { $score = $tmp; $id_customer_thread = $row['id_customer_thread']; } } } $old_message = Db::getInstance()->getValue(' SELECT cm.message FROM '._DB_PREFIX_.'customer_message cm LEFT JOIN '._DB_PREFIX_.'customer_thread cc on (cm.id_customer_thread = cc.id_customer_thread) WHERE cc.id_customer_thread = '.(int)$id_customer_thread.' AND cc.id_shop = '.(int)$this->context->shop->id.' ORDER BY cm.date_add DESC'); if ($old_message == $message) { $this->context->smarty->assign('alreadySent', 1); $contact->email = ''; $contact->customer_service = 0; } if ($contact->customer_service) { if ((int)$id_customer_thread) { $ct = new CustomerThread($id_customer_thread); $ct->status = 'open'; $ct->id_lang = (int)$this->context->language->id; $ct->id_contact = (int)$id_contact; $ct->id_order = (int)$id_order; if ($id_product = (int)Tools::getValue('id_product')) { $ct->id_product = $id_product; } $ct->update(); } else { $ct = new CustomerThread(); if (isset($customer->id)) { $ct->id_customer = (int)$customer->id; } $ct->id_shop = (int)$this->context->shop->id; $ct->id_order = (int)$id_order; if ($id_product = (int)Tools::getValue('id_product')) { $ct->id_product = $id_product; } $ct->id_contact = (int)$id_contact; $ct->id_lang = (int)$this->context->language->id; $ct->email = $from; $ct->status = 'open'; $ct->token = Tools::passwdGen(12); $ct->add(); } if ($ct->id) { $cm = new CustomerMessage(); $cm->id_customer_thread = $ct->id; $cm->message = $message; if (isset($file_attachment['rename']) && !empty($file_attachment['rename']) && rename($file_attachment['tmp_name'], _PS_UPLOAD_DIR_.basename($file_attachment['rename']))) { $cm->file_name = $file_attachment['rename']; @chmod(_PS_UPLOAD_DIR_.basename($file_attachment['rename']), 0664); } $cm->ip_address = (int)ip2long(Tools::getRemoteAddr()); $cm->user_agent = $_SERVER['HTTP_USER_AGENT']; if (!$cm->add()) { $this->errors[] = Tools::displayError('An error occurred while sending the message.'); } } else { $this->errors[] = Tools::displayError('An error occurred while sending the message.'); } } if (!count($this->errors)) { $var_list = array( '{order_name}' => '-', '{attached_file}' => '-', '{message}' => Tools::nl2br(stripslashes($message)), '{email}' => $from, '{product_name}' => '', ); if (isset($file_attachment['name'])) { $var_list['{attached_file}'] = $file_attachment['name']; } $id_product = (int)Tools::getValue('id_product'); if (isset($ct) && Validate::isLoadedObject($ct) && $ct->id_order) { $order = new Order((int)$ct->id_order); $var_list['{order_name}'] = $order->getUniqReference(); $var_list['{id_order}'] = (int)$order->id; } if ($id_product) { $product = new Product((int)$id_product); if (Validate::isLoadedObject($product) && isset($product->name[Context::getContext()->language->id])) { $var_list['{product_name}'] = $product->name[Context::getContext()->language->id]; } } if (empty($contact->email)) { Mail::Send($this->context->language->id, 'contact_form', ((isset($ct) && Validate::isLoadedObject($ct)) ? sprintf(Mail::l('Your message has been correctly sent #ct%1$s #tc%2$s'), $ct->id, $ct->token) : Mail::l('Your message has been correctly sent')), $var_list, $from, null, null, null, $file_attachment); } else { if (!Mail::Send($this->context->language->id, 'contact', Mail::l('Message from contact form').' [no_sync]', $var_list, $contact->email, $contact->name, null, null, $file_attachment, null, _PS_MAIL_DIR_, false, null, null, $from) || !Mail::Send($this->context->language->id, 'contact_form', ((isset($ct) && Validate::isLoadedObject($ct)) ? sprintf(Mail::l('Your message has been correctly sent #ct%1$s #tc%2$s'), $ct->id, $ct->token) : Mail::l('Your message has been correctly sent')), $var_list, $from, null, null, null, $file_attachment, null, _PS_MAIL_DIR_, false, null, null, $contact->email)) { $this->errors[] = Tools::displayError('An error occurred while sending the message.'); } } } if (count($this->errors) > 1) { array_unique($this->errors); } elseif (!count($this->errors)) { $this->context->smarty->assign('confirmation', 1); } } } } public function setMedia() { parent::setMedia(); $this->addCSS(_THEME_CSS_DIR_.'contact-form.css'); $this->addJS(_THEME_JS_DIR_.'contact-form.js'); $this->addJS(_PS_JS_DIR_.'validate.js'); } /** * Assign template vars related to page content * @see FrontController::initContent() */ public function initContent() { parent::initContent(); $this->assignOrderList(); $email = Tools::safeOutput(Tools::getValue('from', ((isset($this->context->cookie) && isset($this->context->cookie->email) && Validate::isEmail($this->context->cookie->email)) ? $this->context->cookie->email : ''))); $this->context->smarty->assign(array( 'errors' => $this->errors, 'email' => $email, 'fileupload' => Configuration::get('PS_CUSTOMER_SERVICE_FILE_UPLOAD'), 'max_upload_size' => (int)Tools::getMaxUploadSize() )); if (($id_customer_thread = (int)Tools::getValue('id_customer_thread')) && $token = Tools::getValue('token')) { $customer_thread = Db::getInstance()->getRow(' SELECT cm.* FROM '._DB_PREFIX_.'customer_thread cm WHERE cm.id_customer_thread = '.(int)$id_customer_thread.' AND cm.id_shop = '.(int)$this->context->shop->id.' AND token = \''.pSQL($token).'\' '); $order = new Order((int)$customer_thread['id_order']); if (Validate::isLoadedObject($order)) { $customer_thread['reference'] = $order->getUniqReference(); } $this->context->smarty->assign('customerThread', $customer_thread); } $this->context->smarty->assign(array( 'contacts' => Contact::getContacts($this->context->language->id), 'message' => html_entity_decode(Tools::getValue('message')) )); $this->setTemplate(_PS_THEME_DIR_.'contact-form.tpl'); } /** * Assign template vars related to order list and product list ordered by the customer */ protected function assignOrderList() { if ($this->context->customer->isLogged()) { $this->context->smarty->assign('isLogged', 1); $products = array(); $result = Db::getInstance()->executeS(' SELECT id_order FROM '._DB_PREFIX_.'orders WHERE id_customer = '.(int)$this->context->customer->id.Shop::addSqlRestriction(Shop::SHARE_ORDER).' ORDER BY date_add'); $orders = array(); foreach ($result as $row) { $order = new Order($row['id_order']); $date = explode(' ', $order->date_add); $tmp = $order->getProducts(); foreach ($tmp as $key => $val) { $products[$row['id_order']][$val['product_id']] = array('value' => $val['product_id'], 'label' => $val['product_name']); } $orders[] = array('value' => $order->id, 'label' => $order->getUniqReference().' - '.Tools::displayDate($date[0], null) , 'selected' => (int)$this->getOrder() == $order->id); } $this->context->smarty->assign('orderList', $orders); $this->context->smarty->assign('orderedProductList', $products); } } protected function getOrder() { $id_order = false; if (!is_numeric($reference = Tools::getValue('id_order'))) { $reference = ltrim($reference, '#'); $orders = Order::getByReference($reference); if ($orders) { foreach ($orders as $order) { $id_order = (int)$order->id; break; } } } elseif (Order::getCartIdStatic((int)Tools::getValue('id_order'))) { $id_order = (int)Tools::getValue('id_order'); } return (int)$id_order; } } Edited May 2, 2017 by endriu107 Używaj znaczników code <> (see edit history) Link to comment Share on other sites More sharing options...
0 Piotr K. Posted May 2, 2017 Share Posted May 2, 2017 Co i po co chcesz zmieniać? Konfiguracja poczty przez SMTP i sklep w aktualnych wersjach 1.6.1.x powinien działać bez przeróbek. Link to comment Share on other sites More sharing options...
0 inspir Posted May 3, 2017 Share Posted May 3, 2017 Co i po co chcesz zmieniać? Konfiguracja poczty przez SMTP i sklep w aktualnych wersjach 1.6.1.x powinien działać bez przeróbek. Powinien ale nie działa, nie wiem co i gdzie i jak jeszcze moge zmienić aby naprawić ten błąd jakieś pomysły ?? http://oloedition.com/pl/kontakt nadal mam ten sam błąd jest 1 błąd Wystąpił błąd podczas wysyłania wiadomości. Link to comment Share on other sites More sharing options...
0 PMaster Posted May 3, 2017 Share Posted May 3, 2017 Powinien ale nie działa, nie wiem co i gdzie i jak jeszcze moge zmienić aby naprawić ten błąd jakieś pomysły ?? http://oloedition.com/pl/kontakt nadal mam ten sam błąd jest 1 błąd Wystąpił błąd podczas wysyłania wiadomości. Twoje problemy nie polegają na błędach w plikach sklepu. Używasz w sklepie poczty "gmail.com" na serwerze home_pl, a oni od pewnego czasu wprowadzili kolejne "usprawnienie" dla klientów - poniżej cytat: "WAŻNE! Adres e-mail nadawcy zawarty w nagłówku wiadomości musi istnieć w ramach konta, do którego nastąpiła autoryzacja. W przeciwnym wypadku wysyłka wiadomości nie zostanie zrealizowana. Dotyczy to programów pocztowych oraz skryptów, które obsługują wysyłkę wiadomości e-mail." Dlatego aby ze sklepu wysyłać pocztę załóż konto na Swoim serwerze (najlepiej w domenie sklepu), przypisz tę skrzynkę w ustawieniach sklepu i sprawdź czy wysyła...? Powinno być OK Link to comment Share on other sites More sharing options...
0 inspir Posted May 3, 2017 Share Posted May 3, 2017 tak zrobiłem, ma na home.pl email [email protected] , bezpośrednio na te poczte nic nie działa, więc wyczytałem tu żeby zrobić przekierowanie w home na gmail, tak też ustawiłem w home.pl. a w ustawieniach w panelu dałem adres email z gmail, wszędzie kdzie tylko opcja taka wstawienia była, i niestety nadal to samo. Link to comment Share on other sites More sharing options...
0 PMaster Posted May 3, 2017 Share Posted May 3, 2017 Kombinujesz za bardzo Przekierowanie nic nie pomoże na ten filtr w home... Utwórz nowe konto pocztowe i ustaw je w sklepie w zakładce: - Preferencje > Kontakty sklepu - i co najważniejsze również w: Klienci > Kontakty (sklep wysyła wiadomość na adres jaki tu jest wpisany oraz na adres klienta potwierdzenie). Po tych zmianach sprawdź e-mail testowy czy jest wysyłany (Zaawansowane > Adres e-mail na dole strony). Ps. przywróć również plik, w którym robiłeś zmiany na oryginalny (jeśli zmiany były w nim robione). Link to comment Share on other sites More sharing options...
0 inspir Posted May 3, 2017 Share Posted May 3, 2017 niestety taki sam błąd jest 1 błąd Wystąpił błąd podczas wysyłania wiadomości. Link to comment Share on other sites More sharing options...
0 PMaster Posted May 3, 2017 Share Posted May 3, 2017 A gdy wysyłasz e-mail testowy to jaki dostajesz komunikat? Link to comment Share on other sites More sharing options...
0 inspir Posted May 3, 2017 Share Posted May 3, 2017 a przy wysłaniu testowej wiadomośći: mam taki błąd Błąd: proszę sprawdzić konfigurację Link to comment Share on other sites More sharing options...
0 PMaster Posted May 3, 2017 Share Posted May 3, 2017 Ustaw "Użyj funkcji mail php" i sprawdź... Link to comment Share on other sites More sharing options...
0 inspir Posted May 3, 2017 Share Posted May 3, 2017 też nic. żadne ustawienia nie pomagają to jakiś inny problem. podejżewam że to związane z SSL, home pl wręcz zmusza do wykupienia pakietu, a druga sprawa, na poczte wysyła email gdzie masz potwierdzić swój email przypisany do domeny albo ci ją wyłączą jebadełka ....... napewno jest jakies rozwiązanie, nie może tak być ze wprowadzają wymaszanie na zakupy ich produktów. tu potrzeba wiedzy kogoś doświadczonego w tej dziedzinie aby to ominąc albo jakiś wymyśleć moduł dla presty na te ewentualność . Link to comment Share on other sites More sharing options...
0 PMaster Posted May 3, 2017 Share Posted May 3, 2017 Błąd jest prawdopodobnie gdzieś po Twojej stronie Na home działa wiele sklepów Prestasop (jedne lepiej inne gorzej - ale to już inny temat) i w tych które znam, a jest ich kilkaset poczta działa prawidłowo i home niczego od nich nie wymusza (certyfikatu też nie - kupuje je kto chce). Z takim nastawieniem to raczej problemu nie rozwiążesz Link to comment Share on other sites More sharing options...
0 inspir Posted May 4, 2017 Share Posted May 4, 2017 łatwo się mówi, skozystałem z każdej możliwej opcji jaka tu znalazłem i sugestii a mimo to błąd nadal sie pojawia taki sam. . no nic, co zrobić. poszukam płatnie usługi , może ona pomoże to opisze co było powodem tego błędu .Dziękuje za wszelkie chęci pomocy z tym tematem. Link to comment Share on other sites More sharing options...
0 PMaster Posted May 4, 2017 Share Posted May 4, 2017 Wrzuć na priv dostęp do panelu admin sklepu i do plików przez FTP - sprawdzę Ci to tak dla przekonania Link to comment Share on other sites More sharing options...
0 inspir Posted May 4, 2017 Share Posted May 4, 2017 poszło ...dz Link to comment Share on other sites More sharing options...
0 PMaster Posted May 4, 2017 Share Posted May 4, 2017 Daj jeszcze na prv dostęp do panelu sklepu (e-mail i hasło) oraz "czyste" konto pocztowe na założone na home_pl (bez żadnych przekierowań)... Link to comment Share on other sites More sharing options...
0 PMaster Posted May 4, 2017 Share Posted May 4, 2017 Już nie podawaj tych dostępów do panelu sklepu... Wstaw tylko czysty (bez przekierowań) adres e-mail w te miejsca: - Preferencje > Kontakty sklepu - i co najważniejsze również w: Klienci > Kontakty i daj znać czy jest OK??? Link to comment Share on other sites More sharing options...
0 inspir Posted May 4, 2017 Share Posted May 4, 2017 wstawiłem [email protected] niestety nadal to samo, sam sprawdz. Link to comment Share on other sites More sharing options...
0 PMaster Posted May 4, 2017 Share Posted May 4, 2017 Sprawdź teraz... Wszystko działa prawidłowo Link to comment Share on other sites More sharing options...
0 inspir Posted May 4, 2017 Share Posted May 4, 2017 Ja pitole , 2 tyg pitolenia i działa, powiedz teraz gdzie popełniłem błąd abym wiedział w przyszłośći co i jak zrobić . i Serdecznie dziękuje za wszelką pomoc . Link to comment Share on other sites More sharing options...
0 PMaster Posted May 4, 2017 Share Posted May 4, 2017 Ja pitole , 2 tyg pitolenia i działa, powiedz teraz gdzie popełniłem błąd abym wiedział w przyszłośći co i jak zrobić . i Serdecznie dziękuje za wszelką pomoc . Dwa błędy: 1 - zmieniłeś plik w katalogu: ..../classes/Mail.php na błędny z GitHub - pisałem Ci kilka postów wcześniej abyś zmienił na oryginalny i nie zmieniłeś 2 - błędna konfiguracja SMTP - zmieniłem Ci na PHP Mail (SMTP też będzie działać lecz musisz to prawidłowo skonfigurować - poprawne ustawienia znajdziesz gdzieś w pomocy home_pl). I to tyle... Link to comment Share on other sites More sharing options...
0 inspir Posted May 4, 2017 Share Posted May 4, 2017 Kurcze byłem pewny że te pliki dałem poprawne. tak to jest dziesiątki kombinacji aż czlowiek sam się pogubił. Jesteś wielki dziękuje naprawdę za te pomoc, byłem gotów zapłacić za te usługe, wiec i tak bym stracił, chce się odwdzięczyc i te kase przeleje tobie. podaj na priv dane do przelewu, chciaż tak się odwdziecze . Link to comment Share on other sites More sharing options...
0 PMaster Posted May 4, 2017 Share Posted May 4, 2017 Kurcze byłem pewny że te pliki dałem poprawne. tak to jest dziesiątki kombinacji aż czlowiek sam się pogubił. Jesteś wielki dziękuje naprawdę za te pomoc, byłem gotów zapłacić za te usługe, wiec i tak bym stracił, chce się odwdzięczyc i te kase przeleje tobie. podaj na priv dane do przelewu, chciaż tak się odwdziecze . Nie trzeba - na tym forum pomoc jest za FREE - Powodzenia... Link to comment Share on other sites More sharing options...
0 inspir Posted May 4, 2017 Share Posted May 4, 2017 (edited) Mało takich Forum jak te, to przyzna mi setki osób tu kożystających, no i osób jak PMaster . DZIĘKUJE no i zapraszam w przyszłości do mego sklepu, zaczynam jako producent wyrobów gipsowych i betonowych oraz form. panele 3d , imitacja drewna itd . cała strona ze współpracy z tym forum powstała. a jak zaczynałem to nawet nie wiedziałem co to CMS hehehe http://www.oloedition.com Pazdrawiam <Marcin Edited May 4, 2017 by inspir (see edit history) Link to comment Share on other sites More sharing options...
Question
krizzu
Witam serdecznie
Mam zainstalowany sklepik na home.pl i ostatnio przestały dochodzić maile, do wysyłania maili sklep uzywa funkcji mail() jedak jak się dowiedziałem ostatnio home wprowadził dodatkowy parametr do funkcji mail() aby ograniczyć wysyłanie spamu.
https://pomoc.home.pl/komunikaty/1067
Czy ktoś mi może podpowiedzieć do jaki plik (i najlepiej w jaki sposó zmodyfikować tak aby wysyłanie maili działało.
Z góry dziękuję za pomoc.
Link to comment
Share on other sites
64 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now