Stránka: 1 z 1
| [ Príspevkov: 25 ] | |
| Autor | Správa |
|---|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
Zdar! Nazdar!
Potrebujem poradiť s phpmailerom na konkrétnom hostingu php5.sk
Oni tam nemajú mailový server a treba to riešiť cez cudzí smtp server. Ja mám účet na gmaily a skúšam sa ku nemu pripojiť takto:
(Vypisuje mi - Could not authenticate)
Kód: <?php error_reporting(E_ALL); echo '<h1>Toto je lol.php</h1>';
include 'class.phpmailer.php'; $mail=new PHPMailer(); $mail->CharSet = 'utf-8'; // nastavení kodování e-mailu //$mail->SetLanguage("cz","./phpmailer/language/");
$mail->IsSMTP(); // použijeme k odeslání e-mailu SMTP server $mail->SMTPAuth = true; // je nutná SMTP autorizace $mail->Host = 'smtp.gmail.com'; // adresa SMTP serveru
$mail->Port = 465; //$mail->SMTPSecure = 'ssl'; $mail->Username = 'nnn@gmail.com'; // uživatelské jméno $mail->Password = 'XXX'; // uživatelské heslo
$mail->From = 'nnn@gmail.com'; // e-mailová adresa odesílatele $mail->FromName = 'nnn@gmail.com'; // celé jméno odesílatele $mail->AddAddress('nnn@gmail.com'); // e-mailová adresa příjemce
$mail->Subject = 'Toto je predmet'; $mail->Body = 'Toto je telo spravy'; $mail->AltBody = 'Toto je ALT telo spravy'; $mail->WordWrap = 50; // zalomení těla zprávy po 50 znacích
if(!$mail->Send()) { echo 'Zpráva nebyla odeslána!'; echo 'Mailer Error: ' . $mail->ErrorInfo; } else { echo 'Sprava bola odoslana!'; }
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Prečo máš zakomentované SMTPSecure? (v príklade k PHPMailer je ten parameter nastavený a určite ho nemôžeš zakázať)
|
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
To len preto, že som už nevedel v čom to môže byť, tak som to zakomentoval.
Ale teraz keď som to odkomentoval, tak to funguje. Zrejme som tam pred tým mal ešte niečo iné pošahané...
Tak vďaka!
// pridané po 5 minútach od posledného príspevku
EDIT:
Vlastne ešte jedna vec. podľa toho čo som sa dočítal, by to malo fungovať aj na localhoste, ale tam mi vypisuje - Could not instantiate mail function.
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
SI si istý tým, že na localhoste tiež používaš ten Google SMTP server?
|
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
To áno, mal som tam jednu syntaktickú chybu - IsSMTP = true , ale teraz mi to píše - Could not connect to SMTP host
Skúšal som zmeniť port na 25, ale je to to isté...
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Ty tie údaje nemôžeš náhodne meniť.
Nemáš tam nejaký firewall, antivírus... čo ti to blokuje?
|
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
Mám Avasti a firewall neviem čo presne by mal blokovať? Resp. tá trieda používa pre smtp funkciu fsockopen, ako som zistil a tá mi na localhoste funguje.
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Pomocou tej funkcie sa to pripája na server Google a presne to ti ten program môže blokovať.
|
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
Ale tá funkcia funguje, takže byť nemala byť blokovaná... Používam ju v inom scripte...
// pridané po 19 minútach od posledného príspevku
EDIT:
Nemôže byť chyba práve v tom ssl? Že by som to nemal povolené niekde v httpd.conf Vidím tam nejaký modul ssl...
Phpinfo mi píše, že imap ssl is enabled. Len neviem, aký je rozdiel medzi imap a smtp...
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
V phpinfo pozri, aké máš "Registered Stream Socket Transports". (a možno musíš nainštalovať/povoliť openssl rozšírenie)
|
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
Tam je: tcp, udp
A v httpd.conf mám ssl modul zakomentovaný. Ale keď ho odkomentujem, tak nič... Si spomínam, že tam treba skopírovať ešte nejaké knižnice odniekiaľ - kamsi, ale netuším ktoré a kam... resp. nechcem to pošahať.
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Pravdepodobne treba nainštalovať Windows verziu knižnice OpenSSL. (predpokladám, že niekde v dokumentácii, či inštalačnom návode k tvojmu Php je napísané, čo presne treba urobiť, aby to fungovalo)
|
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
Skúsim to nájsť, ale potrebujem vedieť s čím to presne súvisí, lebo tie inštalácie sa od seba v jednotlivých verziách líšia. Takže na čo presne sa mám pozerať, na verziu Apacha, alebo php???
// pridané po 11 hodinách 22 minútach od posledného príspevku
Tak ja som skúšal toto:
odkomentovať v httpd.conf - #LoadModule ssl_module modules/mod_ssl.so
odkomentovať v php.ini - ;extension=php_openssl.dll
nahral som do koreňového adresára PHP knižnicu php_openssl.dll
reštartol som Apache
Ale nič sa nezmenilo. Teda nič ohľadne toho mailu.
Nevie niekto kde je chyba?
Ďakujem.
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
To majú ľudia hádať, čo to vlastne máš nainštalované? Prečítaj si návod k tomu, čo si inštaloval, a tam sa určite dozvieš, čo treba urobiť, aby ti to fungovalo.
|
|
Registrovaný: 27.04.11 Prihlásený: 21.04.12 Príspevky: 35 Témy: 5 | 5 |
Ja mám ten istý problém, akurát že nie localhoste, ale na hostingu php5.sk .Skúšal som presne to, čo ste tu písali, no mne stále vypisuje chybu
„Could not instantiate mail function“
_________________ „Slobodu mi predsa nikto nemôže zobrať, veď slobodný som sa už narodil!“ Kráľ Artuš |
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Určite si nerobil to isté, pretože ty sa tam snažíš používať funkciu mail a nie SMTP.
|
|
Registrovaný: 27.04.11 Prihlásený: 21.04.12 Príspevky: 35 Témy: 5 | 5 |
Kód: <?php
$meno = $_POST['meno']; $email = $_POST['email']; $telefon = $_POST['telefon']; $osoby = $_POST['osoby']; $od = $_POST['od']; $do = $_POST['do']; $text = $_POST['text'];
error_reporting(E_ALL); echo '<h1>Toto je lol.php</h1>';
include 'class.phpmailer.php'; $mail=new PHPMailer(); $mail->CharSet = 'utf-8'; $mail->SetLanguage("cz","./phpmailer/language/");
$mail->IsSMTP = true; $mail->SMTPAuth = true; $mail->Host = 'smtp.gmail.com';
$mail->Port = 465; $mail->SMTPSecure = 'ssl'; $mail->Username = 'mojemeno@gmail.com'; $mail->Password = 'mojeheslo';
$mail->From = $email; $mail->FromName = $meno; $mail->AddAddress('mojaadresa@gmail.com');
$mail->Subject = 'Toto je predmet'; $mail->Body = 'Toto je telo spravy : $meno $telefon $od $do $text'; $mail->AltBody = 'Toto je ALT telo spravy'; $mail->WordWrap = 50;
if(!$mail->Send()) { echo 'Zpráva nebyla odeslána!'; echo 'Mailer Error: ' . $mail->ErrorInfo; } else { echo 'Sprava bola odoslana!'; } ?>
Je to na hostingu php5.sk ( http://www.php5.sk). Tam totiž nefunguje normálna mail funkcia, ale treba ísť cez SMTP.
Ak tu nájde niekto chybu, ďakujem
PS: tie posty sú z formulára na predošlej stránke čo je servery
_________________ „Slobodu mi predsa nikto nemôže zobrať, veď slobodný som sa už narodil!“ Kráľ Artuš |
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
IsSMTP je metóda nie premenná.
|
|
Registrovaný: 27.04.11 Prihlásený: 21.04.12 Príspevky: 35 Témy: 5 | 5 |
Tým chceš čo povedať? Že nemôžem posielať mail ktorý obsahuje premenné, ktoré zadá uživateľ ešte pred tým??? Čiže môžem posielať len text ktorý tam surovo napíšem?
_________________ „Slobodu mi predsa nikto nemôže zobrať, veď slobodný som sa už narodil!“ Kráľ Artuš |
|
Registrovaný: 05.09.09 Príspevky: 1141 Témy: 127 | 127 Bydlisko: Lehota pod ... |
Vôbec nemám pocit, že by premennú IsSMTP zadával užívateľ a zo surovosťou napísaného mailu to má tiež pramálo spoločné.
Skôr mám pocit, že ty absolútne nechápeš...
|
|
Registrovaný: 27.04.11 Prihlásený: 21.04.12 Príspevky: 35 Témy: 5 | 5 |
Aha moment  . Ja som ťa nepochopil  . Ty si hovoril o IsSMTP. Tak to dáva rozhovoru iný rozmer. Okej, takže toto Kód: IsSMTP = true; je zle... okej, čo tam tedá ma byť?
_________________ „Slobodu mi predsa nikto nemôže zobrať, veď slobodný som sa už narodil!“ Kráľ Artuš |
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Na predošlej stránke to je urobené správne, takže sa tam pozri a budeš vedieť (a keby si mal v Php zapnuté zobrazovanie všetkých chýb, takmer určite by sa ti tam zobrazila nejaká chyba alebo upozornenie).
|
|
Registrovaný: 27.04.11 Prihlásený: 21.04.12 Príspevky: 35 Témy: 5 | 5 |
Ono tú chybu mi tam vypisuje, ako som už spomínal
„Could not instantiate mail function.“
_________________ „Slobodu mi predsa nikto nemôže zobrať, veď slobodný som sa už narodil!“ Kráľ Artuš |
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Skús si nainštalovať iný prehliadač, pretože ten tvoj zrejme zobrazuje len niektoré príspevky a tie dôležité z nejakého dôvodu preskakuje.
Ty tam nepoužívaš SMTP ale používaš tam funkciu mail. Na tej predchádzajúcej stránke (alebo v návode k PHPMailer) sa pozri, ako sa to IsSMTP používa.
|
|
Registrovaný: 27.04.11 Prihlásený: 21.04.12 Príspevky: 35 Témy: 5 | 5 |
Okej, chybu som mal v adresári  , tak sa ospravedlňujem, aspoň som sa naučil Phpmailer  .
Ďakujem všetkým.
_________________ „Slobodu mi predsa nikto nemôže zobrať, veď slobodný som sa už narodil!“ Kráľ Artuš |
|
Stránka: 1 z 1
| [ Príspevkov: 25 ] | |
|