Sziasztok!
Szolgáltatóm nem engedélyezi a phpmail() függvényt, helyette a PhpMailer-t ajánlja.
Letöltöttem, telepítettem a modult (Php mailer_v5.1 fájljait is bemásoltam a Copy Here-nek megfelelő helyre az alap modulefájlok közé), de sehogy sem működött. Aztán láttam, hogy a szolgáltató írja, hogy a class.phpmailer.php a szerverükön elérhető, nem szükséges saját tárhelyre, s mivel úgy nem működött, uninstalláltam a modult és megpróbáltam beincludeolni az általuk adott következő mintafájlt a saját adataimra átállítva:
// A phpMailer class beincludeolasa require("class.phpmailer.php"); // A class a szerverunkon elerheto, nem szukseges a sajat // tarhelyen szerepelnie $mail = new PHPMailer(); $mail->IsSMTP(); // SMTP szerver neve $mail->Host = "localhost"; // SMTP port $mail->Port = 1025; // a fenti beallitassal a hirlevelkuldesre keszitett // leveleszoszerveren keresztul kerul kikuldesre a level // A felado e-mail cime $mail->From = "[email protected]"; // A felado neve $mail->FromName = "Gipsz Jakab"; // Cimzett e-mail cime. Tobb is megadhato. $mail->AddAddress("[email protected]"); // A levelkuldeshez az UltraNET levelezoszervereit hasznalva // azonositas szukseges, ezert kell a kovetkezo parameter: $mail->SMTPAuth = true; // Az azonositashoz hasznalando e-mail cim (lehet barmely, az // UltraNET rendszereben letezo e-mail cim, a cimzett nem fogja latni, // hogy milyen e-mail cim lett ide beirva, tehat csak annyi a lenyeg, // hogy letezzen a rendszerben.) $mail->Username = "[email protected]"; // Az elozoleg megadott e-mail cimhez tartozo jelszo $mail->Password = "jelszo-a-fenti-e-mailhez"; // SMTP protokollon keresztul kuldunk $mail->Mailer = "smtp"; // A level targya $mail->Subject = "First PHPMailer Message"; // A level torzse. Lehet plaintext, vagy HTML kod is. $mail->Body = "[geshifilter-html]<body><br><br><b>Hi!</b><br> This is my first e-mail sent through PHPMailer."; // Plaintext esetben hany betu utan torje meg a sort automatikusan $mail->WordWrap = 50; // Ha a torzsbe irtunk HTML kodokat, akkor a kovetkezo // parameter beallitasa szukseges: $mail->IsHTML(true); // Csatolmany kuldese a kovetkezo ket sor kikommentezese utan lehetseges: //$path="/home/ftp/felhasznalonev/public_html/filenev"; //$mail->AddAttachment($path,"filenev","base64", "application/octet-stream"); // A level kikuldese if(!$mail->Send()) { echo 'A levelet nem sikerult elkuldeni.'; echo 'Hibakod: ' . $mail->ErrorInfo; } else { echo 'A level sikeresen elkuldve.'; } ?> Így működik is a levélküldés, csakhogy azt nem tudom sehogy sem összehozni, hogy a levélnek ne fix címzettjei, tárgya és törzse legyen, hanem az, ami a phpmail() függvény szerint lenne. Szeretném, ha valaki megmondaná, hogy a /inculdes/mail.inc fájl tartalmát hogyan kellene megváltoztatni, hogy az oldal a phpmail() helyett a szolgáltató tárhelyén lévő PhpMailer-t használja, de a levél tárgyának, címének, törzsének előállítása ugyanúgy az addigiaknak megfelelően működjön.[/geshifilter-html]
Melyik modulhoz, modulokhoz kapcsolódik a téma?:
Drupal verzió:
Fórum:
Szerintem kellene az a modul,
és semmi bajod nem lesz attól, hogy a szolgáltatónak is van példánya fent, meg neked is.
Biztos, hogy mindent a readme/install.txt szerint csináltál?
Nincs semmi hibaüzenet?
Mi a pontos hibajelenség? Az, hogy "sehogyse működött", nekünk nem mond semmit. Ha leírod, hogy így és így próbáltam, ezt és ezt tapasztaltam, stb., akkor talán többet tudunk mondani.
Nagy Gusztáv
rossz volt a megadott port
a szolgáltató a phpmailerhez a localhostot és 1025-ös portot írta beállításra, levelező kliensből történő hírlevélküldéshez pedig a mail3.szolgaltatoneve.hu szervert és 2025-ös portot.
Egyik sem működött a modulok alól míg kb. 10 órányi szerencsétlenkedés után kipróbáltam a mail3 szervert az 1025-ös porttal phpmailer alól. A localhost csak akkor működött, amikor modulok nélkül a megadott minta alapján elkészített kódra cseréltem az includes/mail.inc fájlt, a saját magam által telepített phpmailernek ez nem megfelelő beállítás. A mail3 szervert pedig valószínűleg úgy konfigurálták, hogy a megadott 2025-ös porton csak a levelezőkliensek kéréseit fogadja, a phpmailer kérését pedig az 1025-ös porton, csak ugye ezt a beállításkombinációt nem írták le a dokumentációban.
Válaszodat köszönöm, a szolgáltatónak pedig megírom, hogy tegyék bele a dokumentációba, hogy ha a phpmailert a saját tárhelyre telepíti az ügyfél, akkor localhost helyett mail3 szerver kell, azonban annak nem a mailkliensprogramokhoz megadott portja, hanem a localhostos phpmailernél megadott (1025-ös)
smtp modul:
smtp modul: http://drupal.org/project/smtp
---
http://drupalaton.hu