Autor | Zpráva | ||
---|---|---|---|
blahapet Profil |
#1 · Zasláno: 19. 9. 2015, 18:31:40 · Upravil/a: blahapet
Ahoj, dnes jsem poprvé zkoušel odesílat maily přes PHP mailer. Doma na localhostu se skript v pohodě připojil na SMPT na Českém hostingu a mail odeslal, ale pokud jsem pak celou aplikaci nahrál na Český hosting, nastala chyba se spojením se SMPT sereverem. Níže posílám jen část skriptu:
<?php ... ... ... $mail = new PHPMailer(); $mail->IsSMTP(false); // k odeslání e-mailu použijeme SMTP server $mail->Host = "smtp.cesky-hosting.cz"; // zadáme adresu SMTP serveru $mail->SMTPAuth = true; // nastavíme true v případě, že server vyžaduje SMTP autentizaci $mail->Username = "noreply@playpanels.cz"; // uživatelské jméno pro SMTP autentizaci $mail->Password = "HESLO"; // heslo pro SMTP autentizaci $mail->From = "noreply@playpanels.cz"; // adresa odesílatele skriptu $mail->FromName = "Testovací skript"; ... ... ... ?> Jen podotýkám, že ta mailová schránka je funkční. Jinak ten druhej řádek: $mail->IsSMTP(false); // k odeslání e-mailu použijeme SMTP server To FALSE to jsem se ucvak, normálně ty závorky maj bejt a jsou prázdný a taky to nejde. |
||
juriad Profil |
Zkusil jsi zvýšit logování? Na čem to spadne, co to píše, doslova? Třeba při přístupu na SMTP server z jejich hostingu musíš použít nějaké jiné parametry. $mail->SMTPDebug = 3; // Enable verbose debug output |
||
blahapet Profil |
#3 · Zasláno: 19. 9. 2015, 22:23:10
Ahojky, díky za radu. Po vložení toho debugu to napsalo:
SMTP -> ERROR: Failed to connect to server: Connection refused (111) Došlo k chybě při odeslání e-mailu.Chybová hláška: SMTP Error: Could not connect to SMTP host. |
||
Davex Profil |
#4 · Zasláno: 19. 9. 2015, 22:42:04
blahapet:
Na Českém hostingu není standardně povoleno připojení přímo na SMTP server. Co s tím? Stačí se podívat do jejich nápovědy. |
||
blahapet Profil |
#5 · Zasláno: 20. 9. 2015, 06:07:40
Takže chápu-li dobře...
Jiné způsoby odesílání zpráv z PHP (například přes nějaký externí odesílací SMTP server, či přímým připojením na přijímací SMTP server) nejsou standardně povoleny. Povolit je můžeme na požádání. Mám je požádat, ať mi to povolí. To mi ale stejně nejde do hlavy, jaktože se doma z localhostu na to normálně připojím a u nich ne. |
||
blahapet Profil |
#6 · Zasláno: 20. 9. 2015, 08:58:12
Ještě se chci zeptat, jestli jde skript nějak upravit či resp. jestli lze nějak SMPT server obejít a odeslat mail bez něho?
|
||
blahapet Profil |
#7 · Zasláno: 20. 9. 2015, 11:23:06
Jelikož mi Český hosting odmítl odblokovat SMPT server pro PHP Mailer a radil mi, že to jde i bez něho poslat, tak jsem zkoušel zaměnit IsSMPT() za IsMail() ...
<?php $mail = new PHPMailer(); $mail->IsMail(); $mail->AddAddress("polak_karel@seznam.cz"); $mail->Subject = "Test 1"; $mail->Body = "Test 1 of PHPMailer."; if(!$mail->Send()) { echo "Error sending: " . $mail->ErrorInfo;; } else { echo "Letter sent"; } ?> Ale píše to chybu: Could not instantiate mail function. |
||
Davex Profil |
#8 · Zasláno: 20. 9. 2015, 12:35:40
blahapet:
Nestačí to bez toho $mail->IsMail() ?
|
||
blahapet Profil |
#9 · Zasláno: 20. 9. 2015, 12:48:36
Bez toho to taky jde, ale zásadní věc proč to nešlo, že tam musí řádek s odesílatelem (mailová adresa)
$mail->From = "odesilatel@seznam.cz"; |
||
Časová prodleva: 9 let
|
0