Fórum Ubuntu CZ/SK
Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: On 14 Července 2009, 09:04:06
-
Problém je v tom, že mi tato funkce nefunguje, funkce vypadá takhle:
function sendMail($from, $to, $mail_subj, $mail_txt, $coding)
{
$headers = '';
if ($coding == 1){
$mail_txt = StrTr($mail_txt, "\x8A\x8D\x8E\x9A\x9D\x9E", "\xA9\xAB\xAE\xB9\xBB\xBE");
}
$headers .= "From: $from\n".
"Return-Path: $from\n".
"MIME-Version: 1.0\n".
"Content-Type: text/plain; charset=\"iso-8859-2\"\n".
"Content-Transfer-Encoding: 8bit";
@Mail($to, $mail_subj, $mail_txt, @$headers);
}
Měla by být v pořádku, našel jsem si na netu víc různých možností, nefunguje ale ani jedna, takže problém bude nejspíš v systému...? Postfix ale nastavený mám, příkaz "mutt" mi spolehlivě funguje..nenastavuje se někde posílání mailů někde v php..?
díky
-
/etc/php5/apache2/php.ini
[mail function]
; For Win32 only.
;SMTP = localhost
;smtp_port = 25
; For Win32 only.
;sendmail_from = me@example.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
Toto je standartní nastavení, takže předpokládám, že se zde bude muset nastavit cesta k sendmailu, nebo něco podobného.
-
No, já tam nějaké změny mám, v tomhle jsem se už trochu drbal, ale co přesně tam má být netuším...mně už ty emaily fungovaly, tuším že tak měsíc a půl zpět, ale nevím, proč to přestalo fungovat..fw nemám, resp mám jen základní.
Našel jsem příspěvek, kde se tohle řešilo, ale závěr tam bohužel není..
http://forum.ubuntu.cz/index.php?topic=3500.0
Na zkoušku odesílám jen to nejpodstatnější
Mail("muj@mail.cz", "test #1", "testovaci zprava c.1");
...ale výsledek stejný
-
Možná by pro začátek nebylo od věci zjistit, co vrací (případně hlásí) munkce mail().
-
Možná by pro začátek nebylo od věci zjistit, co vrací (případně hlásí) munkce mail().
Ona se právě tváří jako že je vše v pořádku.
-
To znamená, že vrací hodnotu TRUE? Nebo že nehlásí žádnou chybu (když má hubu zavřenou zavináčem)? Nevidím totiž nikde, že bys tu hodnotu testoval. Např.: $result = mail(...). A ten zavináč bych taky vyhodil. Až ti to bude fungovat, tak ho tam můžeš vrátit. Ony toho totiž některé funkce umí o sobě docela hodně říci, když je necháš :-)
-
Mě vrátí hondotu true, nehlasí nic (samozřejmě bez zavináče) a error reporting mám na full.
-
Mě vrátí hondotu true, nehlasí nic (samozřejmě bez zavináče) a error reporting mám na full.
Tak moment, měl jsem za to, že to nefunguje ONovi... A teď jsem si teprve všim, že... No, jestli je, soudruzi, problém s mailserverem, tak tady už neposloužím, neb ho na svém U nepoužívám :-)
-
Mě vrátí hondotu true, nehlasí nic (samozřejmě bez zavináče) a error reporting mám na full.
Tak moment, měl jsem za to, že to nefunguje ONovi... A teď jsem si teprve všim, že... No, jestli je, soudruzi, problém s mailserverem, tak tady už neposloužím, neb ho na svém U nepoužívám :-)
Já se jen přidal, jelikož mám ten samý problém. Mail server mám nainstalovaný pomocí Synaptic -> Vybrat balíky podle účelu
-
no, mně to taky nehlásí žádnou chybu, jak jsem již psal, na zkoušku posílám jen:
Mail("muj@mail.cz", "test #1", "testovaci zprava c.1");
...a taky nic. Prostě jakoby vše ok. Nemyslím, že bude problém ve skriptu, počítám s tím, že bude chyba v nastavení mailserveru, jen teda nevím jak to zjistit...ikdyž, proč mi teda mutt funguje? Ten taky potřebuje mít správně nastavený mailserver a mutt funguje naprosto spolehlivě
-
[soudruh@U-LAMP][13:39:25][~]
$php -B "echo 'start'; if(mail('***@gmail.com','predmet','text')) { echo 'OK'; } else { echo 'ERROR'; } echo 'konec'; ";
startOKkonec
A na mail nic nedorazí