We are in the process of migrating this forum. A new space will be available soon. We are sorry for the inconvenience.

PHP mail() i sendmail - dedyk


szczeles
26-05-2006, 22:20
Cytat Napisał oskdks
Przeróbcie mi to na zwykły formularz gdzie wpisuje z poziomu przegladarki to co chce wysłać a nie juz z góry założone jest to w kodzie
Chyba kolego pomyliełeś tematy, a tak w ogóle to sam sobie przerób :P

oskdks
26-05-2006, 21:58
Kod PHP:
require("phpmailer/class.phpmailer.php");
$mail = new PHPMailer();

$mail->PluginDir "phpmailer/";
$mail->From "NASZE@KONTO"//adres naszego konta
$mail->FromName "phpMailer tester";//nagłówek From
$mail->Host "NASZ.SERWER.SMTP";//adres serwera SMTP
$mail->Mailer "smtp";
$mail->Username "tester@KONTO";//nazwa użytkownika
$mail->Password "HASLO";//nasze hasło do konta SMTP
$mail->SMTPAuth true;
$mail->SetLanguage("en""phpmailer/language/");

$mail->Subject "Mail testowy";//temat maila

// w zmienną $text_body wpisujemy treść maila
$text_body "Cześć, chyba phpMailer działa \n\n";
$text_body .= "Na zawsze Twój, \n";
$text_body .= "PHPMailer";

$mail->Body $text_body;
// adresatów dodajemy poprzez metode 'AddAddress'
$mail->AddAddress("jurek@gdziestam.pl","Jurek");
$mail->AddAddress("franek@gdziestam.pl","Franek");

if(!
$mail->Send())
echo 
"There has been a mail error 
"
;
echo 
$mail->ErrorInfo."
"
;

// Clear all addresses and attachments
$mail->ClearAddresses();
$mail->ClearAttachments();
echo 
"mail sent 
"
;

?>
Przeróbcie mi to na zwykły formularz gdzie wpisuje z poziomu przegladarki to co chce wysłać a nie juz z góry założone jest to w kodzie

sancio
26-05-2006, 08:01
"ls -la"
chodziło mi o pełne linie (czyli prawa do plikow, rozmiar itp)

Proszę jeszcze zrobic ls -la dla:
/etc/alternatives/mta
/etc/alternatives/mta-in_libdir

A jeśli wynik będzie tez linkiem symbolicznym, to jeszcze raz.. az do skutku (bedzie to plik, dla niego tez ls -la :-) )

amster
24-05-2006, 12:15
[root@root]# ls -la /usr/sbin/sendmail
/usr/sbin/sendmail -> /etc/alternatives/mta

[root@root]# ls -la /usr/lib/sendmail
/usr/lib/sendmail -> /etc/alternatives/mta-in_libdir

[root@root]# ls -la /etc/sysconfig/sendmail
/etc/sysconfig/sendmail

[root@root]# which sendmail
/usr/bin/which: no sendmail in (/usr/kerberos/sbin:/usr/kerberos/bin://sbin://bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin)

BTW:
Looking in Installed Packages:
Name : sendmail
Arch : i386
Version: 8.12.11
Release: 4.6
Size : 1.26 MB
Group : System Environment/Daemons
Repo : Locally Installed
Summary: A widely used Mail Transport Agent (MTA).

Juz nawet nie wiem do czego dowiazanie zrobic ...

sancio
23-05-2006, 08:41
A co pokazuje:
Kod:
# ls -la /usr/sbin/sendmail
# ls -la /usr/lib/sendmail
# ls -la /etc/sysconfig/sendmail
# which sendmail

amster
22-05-2006, 20:32
Juz wczesniej probowalem skompilowac z takimi opcjami, ale niestety nic to nie daje...

Zgodnie z zaleceniami sprawdzialem czy dochodza maile wyslane z konsoli, nie dochodza...
Sendmail chyba jednak nie dziala, poprzednio chociaz odpowiadal jakims bledem, teraz milczy,

Pozdrawiam
Amster

szczeles
22-05-2006, 14:58
No ale możesz wysłać mail z konsoli?

Spróbuj skompilować z --wist-sendmail=/usr/sbin/sendmail

amster
21-05-2006, 20:55
Wywalilem sendmaila, zainstalowalem od nowa (yum), pojawil sie w 3 katalogach /usr/sbin /usr/lib /etc/sysconfig ... /usr/sbin/sendmail i /usr/lib/sendmail wywala, ze nie ma takiego pliku ( dowiazania )...

a mail() nadal nie dziala...
Pozdrawiam
Amster

szczeles
21-05-2006, 20:38
Hmm, a nie powinno sie podawac czasami sciezki do samego sendmaila? W /etc/sysconfig/sendmail jest tylko jego config :<
Walnij `whereis sendmail` i to podaj przy kompilacji

amster
21-05-2006, 19:33
Wyglada na to, ze w ogole podczas rekompilacji php nie wykrywa sendmaila, nie mam opcji path sendmail w bloku standard.
Probowalem np --with-sendmail=/etc/sysconfig/sendmail , ale nic...

Prosze o jak najszybsza odp.
Z gory dziekuje

Pozdrawiam, Amster

szczeles
21-05-2006, 14:59
Cytat Napisał amster
wyglada na to ze sie normalnie uruchamia,
Znaczy - wysłałeś mail z poziomu konsoli i doszedł, czy nie?

Odpal phpinfo i poszukaj, czy masz sendmail_path zdefioniowane, może literówkę zrobiłeś ;< Spójrz też w sekcję standard, czy jest tam zdefionowane "path to sendmail". Jeśli wszystko jest to nie ma sans, żeby nei działało ;-)



EDIT: ach te literówki

amster
21-05-2006, 13:16
Witam,

Mam nastepujacy problem, chcialbym uzywac na swoim serwerze dedykowanym funkcji mail, lecz nie moge poradzic sobie z jej ustawieniem, php dziala, instaluje sendmaila poprzez yum, wtedy sprawdzam gdzie sie pojawil:
/usr/lib
/usr/sbin/
/etc/sysconfig || tutaj dziala
Po chmod +x /etc/sysconfig/sendmail ... uruchamiam go,wyglada na to ze sie normalnie uruchamia, wiec nastepnie rekompiluje php, ustawiam w pliku php.ini sciezke /etc/sysconfig/sendmail -t -i , restartuje apache'a i sprawdzam czy dziala mi juz formularz kontaktowy, niestety nie, dostaje komunikat Fatal error: Call to undefined function: mail() in ...
Nie mam juz pomyslow, prosze o jakies porady.
Z gory bardzo dziekuje.
Pozdrawiam
Amster