kilofmar
Nowy użytkownik
Offline
Wiadomości: 2
|
 |
« : 8 Marzec 2010, 11:44 » |
|
Witam. Jak zrobić aby list który został wysłany w adresie nadawcy miał email podany z formularzu a nie ten z pliku konfiguracyjnego serwera SMTP. Tak aby klikając odpowiedz, odpowiedz została wysłana na email który został podany przez użytkownika. $swift = email::connect();
$from = new Swift_Address($_POST['mail'],"Wiadomość z formularza kontaktowego strony I LO"); //TAK NIE DZIAŁA
$from = new Swift_Address("kaziuwielki1lo@wp.pl","Wiadomość z formularza kontaktowego strony I LO"); //TAK DZIALA ALE WYSYLAMY NA ADRES Z PLIKU KONFIGURACYJNEGO
$subject = $_POST['temat'].' Z dnia: '. date("d/m/Y");
$message = $_POST['tresc'];
// Build recipient lists
$recipients = new Swift_RecipientList;
$recipients->addTo('adrs_szkoly@op.pl');
// Build the HTML message
$message = new Swift_Message($subject, $message, "text/html");
// Attachment
if ($swift->send($message, $recipients, $from))
{
// Success
}
else
{
// Failure
}
// Disconnect
$swift->disconnect();
|
|
|
|
|
Zapisane
|
|
|
|
|
Zepco
|
 |
« Odpowiedz #1 : 8 Marzec 2010, 12:52 » |
|
tak jest wg dokumentacji. $sender =& new Swift_Address($email, $name); $sent = $swift->send($message, "your@address.tld", $sender);
Zrobię mały OT: Kto wie co będzie dla adresów, gdzie w domenie jest ustawiony spf? Czy serwery sprawdzające ten rekord odrzucą wiad albo dadzą jako spam?
|
|
|
|
|
Zapisane
|
OŚWIADCZENIE: Ja, niżej podpisany, świadomy wszystkich konsekwencji tego posta postanawiam go dopuścić do użytku publicznego, albowiem bo gdyż aczkolwiek uważam, że nie wyrządzi on (znaczy: post) krzywdy nikomu innemu niźli mnie samemu (czyli autorowi posta). -- Zepco -- (: nʞnʞ
|
|
|
|
nediam
|
 |
« Odpowiedz #2 : 8 Marzec 2010, 21:48 » |
|
Zepco: To zależy ustawienia ma dany serwer... jeżeli jest permit_mynetworks (przyklad postfixa) a w mynetworks masz 127.0.0.1 (ew dodatkowe serwery z twojej sieci) to nie powinno być problemu.
|
|
|
|
|
Zapisane
|
|
|
|
kilofmar
Nowy użytkownik
Offline
Wiadomości: 2
|
 |
« Odpowiedz #3 : 9 Marzec 2010, 10:36 » |
|
Nie oto mi chodzi. W pliku konfiguracyjnym mam tak $config['options'] = array('hostname'=>'smtp.wp.pl', 'port'=>'587', 'username'=>'kaziuwielki1lo', 'password'=>'haslo'); i jak list dojdzie to po kliknięciu w pole odpowiedz wstawia sie adres kaziuwielki1lo@wp.pl a ja chce aby umieszczał się adres który został podany w formularzu.
|
|
|
|
|
Zapisane
|
|
|
|
|
barat
|
 |
« Odpowiedz #4 : 9 Marzec 2010, 10:41 » |
|
Nie oto mi chodzi. W pliku konfiguracyjnym mam tak $config['options'] = array('hostname'=>'smtp.wp.pl', 'port'=>'587', 'username'=>'kaziuwielki1lo', 'password'=>'haslo'); i jak list dojdzie to po kliknięciu w pole odpowiedz wstawia sie adres kaziuwielki1lo@wp.pl a ja chce aby umieszczał się adres który został podany w formularzu. Przy SMTP chyba nie da rady z jakichś tam względów bezpieczeństwa, ale mogę się mylić ... To jest tak jakbyś wysyłał listy przez pocztę polską, ale wymagał by podpisywali się jako InPost  Czemu nie korzystasz z native, albo jeszcze lepiej - sendmail ? Poza tym, chyba do tak prostej wysyłki wystarczy zwykły helper email::send()
|
|
|
|
« Ostatnia zmiana: 9 Marzec 2010, 10:45 wysłane przez barat »
|
Zapisane
|
|
|
|
|
Zepco
|
 |
« Odpowiedz #5 : 9 Marzec 2010, 11:10 » |
|
Może sendera ustaw takiego jakiego masz w konfigu, natomiast spróbuj z setReplyTo()
|
|
|
|
|
Zapisane
|
OŚWIADCZENIE: Ja, niżej podpisany, świadomy wszystkich konsekwencji tego posta postanawiam go dopuścić do użytku publicznego, albowiem bo gdyż aczkolwiek uważam, że nie wyrządzi on (znaczy: post) krzywdy nikomu innemu niźli mnie samemu (czyli autorowi posta). -- Zepco -- (: nʞnʞ
|
|
|
|
nediam
|
 |
« Odpowiedz #6 : 9 Marzec 2010, 12:00 » |
|
Jak się nie da jak się da  $message = Swift_Message::newInstance() ->sendFrom(array($POST['adres_email_z_formularza' => $POST['nazwa_wysylajacego_z_formularza']) ->sendTo(...) itd...
Działa na 100% bo sam używam i to na serwerze który ma zabezpieczenia przed wysyłaniem poczty z adresów nie należących do domen uwzględnionych w konfiguracji serwera poczty (dzięki ustawieniom które podałem wcześniej) Jest jeszcze jeden sposób zamiast ustawiać "fałszywe" pole From ustaw ReplyTo i po sprawie 
|
|
|
|
|
Zapisane
|
|
|
|
|
barat
|
 |
« Odpowiedz #7 : 9 Marzec 2010, 12:26 » |
|
a smtp.wp.pl nie będzie miał "obiekcji" ? :> Bo np w gmail nie ważne co bym wpisał w pole "from:" i tak wyśle przedstawiając się jako konto do którego się łączę. Do tego łączenie via smtp jest zawsze dłuższe, bardziej zasobożerne itp niż zwykły sendmail. Odczuje to kolega gdy zacznie myśleć o jakimś newsletterze 
|
|
|
|
|
Zapisane
|
|
|
|
|
nediam
|
 |
« Odpowiedz #8 : 9 Marzec 2010, 12:41 » |
|
Nie testowałem na WP ani na google zresztą tak jak wspomniał Zepco a poźniej ja, najprościej użyć setReplyTo() żadne google ani wp nie powinno mieć obiekcji co do tego. Co do newslettera to nie wyobrażam sobie ręcznego wysyłania newsleterów, chyba ze wszystkich wpakujesz do pola "To" albu ukryta kopia 
|
|
|
|
|
Zapisane
|
|
|
|
|
barat
|
 |
« Odpowiedz #9 : 9 Marzec 2010, 12:48 » |
|
Co do newslettera to nie wyobrażam sobie ręcznego wysyłania newsleterów, chyba ze wszystkich wpakujesz do pola "To" albu ukryta kopia  Przecież wiadomo, że chodzi o automat. Ale jak będzie miał powiedzmy 2000 zapisanych, a skrypt patrząc na config zobaczy SMTP to się będzie łączył 2k razy w ten właśnie sposób ... serwer się bardziej spoci niż sendmail/mail 
|
|
|
|
|
Zapisane
|
|
|
|
|
Zepco
|
 |
« Odpowiedz #10 : 9 Marzec 2010, 12:51 » |
|
Łączysz się raz i wysyłasz większą ilość maili, ale 2k naraz raczej nie da rady.
|
|
|
|
|
Zapisane
|
OŚWIADCZENIE: Ja, niżej podpisany, świadomy wszystkich konsekwencji tego posta postanawiam go dopuścić do użytku publicznego, albowiem bo gdyż aczkolwiek uważam, że nie wyrządzi on (znaczy: post) krzywdy nikomu innemu niźli mnie samemu (czyli autorowi posta). -- Zepco -- (: nʞnʞ
|
|
|
|
nediam
|
 |
« Odpowiedz #11 : 9 Marzec 2010, 12:55 » |
|
barat: SwiftMail jest na tyle fajny że posiada taką sprytną funkcję jak betchSend() zainteresuj się nią 
|
|
|
|
|
Zapisane
|
|
|
|
|