![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 11.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam skrypt do wysylania e-maili , tylko ze cos w nim nie dziala ...
[php:1:895a48bc69] <?php require_once 'Mail.php'; # twój serwer smtp $params['host'] = 'smtp.wp.pl'; # dodatkowe parametry połączenia (opcjonalne): # $params['port'] = 25; # jeśli serwer wymaga autentykacji: # $params['auth'] = false; # $params['username'] = ''; # $params['password'] = ''; # wszelkie nagłówki... $headers['Subject'] = 'To jest temat'; $headers['From'] = 'jacek@wp.pl'; $body = 'oto jakiś spam....'; # jeśli adresat jest jeden wystarczy # $recipients = 'user@domena.pl'; $recipients = array('jacek811@wp.pl', 'jacek811@wp.pl'); $mail = Mail::factory('smtp', $params); if (PEAR::isError($mail)) { print $mail->getMessage(); } else { # sio w Internet! $error = $mail->send($recipients, $headers, $body); if (PEAR::isError($error)) { print $error->getMessage(); } else { print 'mail został wysłany.'; } } ?>[/php:1:895a48bc69] a błąd ktory sie wyswietla to: Kod Fatal error: Undefined class name 'mail' in E:usrstronatestMail.php on line 24
Prosilbym o pomoc w rozwiazaniu tego problemu ... |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 335 Pomógł: 0 Dołączył: 15.11.2003 Ostrzeżenie: (0%) ![]() ![]() |
A twój serwer obsługuje Mail()
![]() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 20.04.2003 Skąd: Tarnów Ostrzeżenie: (0%) ![]() ![]() |
Twój serwer albo serwer, z którego korzystasz może nie obsługiwać funkcji mail(), głownie jest wyłączana ona z powodu spamu, jaki można dzięki niej wykonać. Wsytarczy przecież wystarczy ją umieścić w pętli i iterować przez 1000:P
-------------------- YoNo
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 11.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Jeśli się nie myle to ten skrypt powinien właśnie ominąć potrzebe posiadania sendmaila na serwerze ...
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 247 Pomógł: 0 Dołączył: 19.04.2003 Skąd: Hamburg / Darlowo Ostrzeżenie: (0%) ![]() ![]() |
Cytat usrstronatestMail.php on line 24
|
|
|
![]()
Post
#6
|
|
![]() Administrator planeta/IRC Grupa: Przyjaciele php.pl Postów: 385 Pomógł: 0 Dołączył: 19.04.2003 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
Cytat Cytat usrstronatestMail.php on line 24 Cytat require_once 'Mail.php';
Próba rekurencyjnego includowania pliku ? ![]() -------------------- "Programmers are in a race with the Universe to create bigger and better idiot-proof programs, while the Universe is trying to create bigger and better idiots. So far the Universe is winning."
Cudi's devBlog |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 11.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Moze ktos zechce pomodz w rozwiazaniu problemu :?:
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 118 Pomógł: 5 Dołączył: 9.07.2003 Skąd: Wołów/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
a moze skozystaj z takiego skryptu:
[php:1:78ba441641]<?php /* adresaci */ $do = "Marysia <marysia@example.com>" . ", " ; // zwróc uwagę na przecinek $do .= "Kasia <kasia@example.com>"; /* temat */ $temat = "Przypomnienie o urodzinach w Sierpniu"; /* wiadomość */ $wiadomosc = ' <html> <head> <title>Przypomnienie o urodzinach w Sierpniu</title> </head> <body> <p>Te urodziny będziemy świętować w Sierpniu!</p> <table> <tr> <th>Osoba</th><th>Dzień</th><th>Miesiąc</th><th>Rok</th> </tr> <tr> <td>Jan</td><td>3.</td><td>Sierpnia</td><td>1970</td> </tr> <tr> <td>Szymon</td><td>17.</td><td>Sierpnia</td><td>1973</td> </tr> </table> </body> </html> '; /* Aby wysłać e-mail w formacie HTML, należy ustawić nagłówek Content-type. */ $naglowki = "MIME-Version: 1.0rn"; $naglowki .= "Content-type: text/html; charset=iso-8859-1rn"; /* dodatkowe nagłówki */ $naglowki .= "From: Przypominacz o urodzinach <urodziny@example.com>rn"; $naglowki .= "Cc: archiwum_mailingu@example.comrn"; $naglowki .= "Bcc: kontrola_mailingu@example.comrn"; /* a teraz wyślij */ mail($do, $temat, $wiadomosc, $naglowki); ?>[/php:1:78ba441641] (zaczerpnięte z manuala php ;P) |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 0 Dołączył: 11.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Tak, tylko ta funkcja wymaga Mail() na serverze, a skrypt ktory podałem na górze nie wymaga ...
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 166 Pomógł: 0 Dołączył: 30.01.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Kiedys to znalazłem na forum - i działa , w pliku z którego chcesz wysłac includujesz ten kod (uzupełniając go wczesniej)
a potem wywołujesz funkcje : smtp_mail(do kogo, temat, wiadomosc) [php:1:51e9a44861]<?php $smtp_host = ''; // Adres smtp np. smtp.wp.pl $smtp_user = ''; // Użytkownik serwera smtp $smtp_pass = ''; // Hasło $email = ''; // Adres od którego przychodzą maile /* Funkcja do wysyłania maili bez użycia funkcji mail(), znaleziona w forum phpBB... */ function smtp_mail($mail_to, $subject, $message) { global $smtp_host, $smtp_user, $smtp_pass, $email; if($mail_to == '') $error = 'Nie podałeś adresu odbiorcy!'; if(trim($subject) == '') $error = 'Nie podałeś tematu wiadomości!'; if(trim($message) == '') $error = 'Wiadomość jest pusta!'; if(!$socket = pfsockopen($smtp_host, 25, $errno, $errstr, 20)) $error = 'Nie mogę się połączyć z serwerem SMTP!'; if(!empty($error)){ echo "<B>Błąd: </B>$error<BR>n"; return false; } server_parse($socket, '220'); if(!empty($smtp_user) && !empty($smtp_pass)){ fputs($socket, 'EHLO '.$smtp_host."rn"); server_parse($socket, '250'); fputs($socket, "AUTH LOGINrn"); server_parse($socket, '334'); fputs($socket, base64_encode($smtp_user)."rn"); server_parse($socket, '334'); fputs($socket, base64_encode($smtp_pass)."rn"); server_parse($socket, '235'); } else{ fputs($socket, 'HELO '.$smtp_host."rn"); server_parse($socket, '250'); } fputs($socket, 'MAIL FROM: <' . $email . ">rn"); server_parse($socket, '250'); $mail_to_array = explode(',', $mail_to); $to_header = 'To: '; @reset($mail_to_array); foreach($mail_to_array as $mail_to_address){ $mail_to_address = trim($mail_to_address); if (preg_match('/[^ ]+@[^ ]+/', $mail_to_address)) { fputs( $socket, "RCPT TO: <$mail_to_address>rn" ); server_parse($socket, '250'); } $to_header .= (($mail_to_address != '') ? ', ' : '')."<$mail_to_address>"; } $message = preg_replace("/(?<!r)n/si", "rn", $message); fputs($socket, "DATArn"); server_parse($socket, "354"); fputs($socket, "Subject: $subjectrn"); fputs($socket, "$to_headerrn"); fputs($socket, "From: ktośtamrn"); fputs($socket, "$headersrnrn"); fputs($socket, "$messagern"); fputs($socket, ".rn"); server_parse($socket, '250'); fputs($socket, "QUITrn"); fclose($socket); return true; } function server_parse($socket, $response) { while (substr($server_response,3,1)!=' ') { if(!($server_response=fgets($socket, 256))) { die('Nie mogę pobrać kodów zwróconych przez serwer.'); } } if(!(substr($server_response, 0, 3) == $response)) { die('Wystąpił problem z wysyłaniem maili. Serwer zwrócił komunikat: '.$server_response); } } ?>[/php:1:51e9a44861] -------------------- |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 60 Pomógł: 0 Dołączył: 9.07.2003 Skąd: krakow Ostrzeżenie: (0%) ![]() ![]() |
no a jak napisac skrypt do wysylania maila z zalacznikiem bo mail() nie obsluguje tego (aby nie trzebab bylo sie logowac do skrzynki tylko anonima wyslac)
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 06:36 |