[PHP] Wysyłanie poczty bez funkcji mail();

0

A więc tak. Na moim serwerze zablokowana jest funkcja mail z powodu nadużywania przez jego użytkowników w/w funkcji do spamowania. Potrzebuję jednak wysyłać maile i znalazłem funkcję smptmail($to, $subject, $message); która powinna wysyłać maile bez potrzeby używania funkcji mail() łącząc się bezpośrednio z serwerem SMPT wybranym przeze mnie. I teraz problem jest następujący: Jak mam najprostszy w świecie kodzik:
<?
function create_form()
{
?>

<html> <head><meta http-equiv="Content-type" content="text/html; charset=iso-8859-2"></head> <body> <form action="mail.php" method="POST">Do: <input type="TEXT" name="to">
Temat: <input type="TEXT" name="subject">
Treść: <textarea name="tresc"></textarea>
<input type="submit" name="submit" value="Wyślij"></form> </body></html>

<? }
include("***/mymail.php"); / <- Tu jest ta funkcja */
if(isset($HTTP_POST_VARS["submit"])) { smtpmail($HTTP_POST_VARS["to"], $HTTP_POST_VARS["subject"], $HTTP_POST_VARS["tresc"]); print_r($HTTP_POST_VARS); } else { create_form(); }
?>
To wtedy działa. Natomiast podczas wykonywania funkcji smptmail() wysyłającej potwierdzenie rejestracji na mojej stronie otrzymuję niezbyt przyjemny komunikat:
Ran into problems sending Mail. Response: 501 5.0.0 HELO requires domain address
Czy ktoś miał z czymś takim do czynienia?

0

http://www.rfc-editor.org/rfc/rfc2821.txt

tam jest specyfikacja e-maila i błąd 501 to

  <b>501 Syntax error in parameters or arguments      </b>

Czyli masz coś z parametrami funkcji chyba :-/
Może pomieszałeś zmienne, tam masz napisane, że wymagany jest adres domeny

0

Doszedłem do tego, co może być przyczyną. Czy istnieje jakaś funkcja, która ze zwykłego tekstu robi dane w formacie przesyłania z formularza? Tak jakbym jakiś tekst, powiedzmy "Blabla, jestem sobie ktośtam" wpisywali do okienka formularza i dawali wyślij i zwracająca to, co otrzymujemy w $HTTP_POST_VARS["nazwa_okienka"]? Nie wiem, czy to zrozumiałe, ale mam nadzieję, że tak...

0

:| nie rozymiem

0

Bo domyślam się, że proble tki w formacie przechowywania danych. Bo jak wykreuję sobie odpowiednie dane do rejestracji i wypiszę funkcją echo() a następnie skopiuję do pomocniczego formularza do wysyłania poczty przedstawionego w 1 poście, to wysyła mi prawidłowo. Kolejność danych sprawdziłem z dziesięć razy. Wniosek z tego, że te same dane, po "przepuszczeniu" przez formularz działają, a wcześniej nie. W związku z czym szukam funkcji, która wykreuje odpowiednik elementu tablicy $HTTP_POST_VARS odpowiadający wpisanemu w dane pole tekstowi...

0

Nadal nie wiem o co chodzi. Przedstaw problem jasno. Staraj sie nie odpoiwadac smemu tak ajk ja to robię :P potem nikt nie wie o co chodzi

0

Hmm.. Spróbuję, chociaż niebardzo wiem, jak to lepiej ująć...
Potrzebuję funkcji typu zamień($cos) zwracającej $cos2 takie, że $cos2 jest takie samo jak $HTTP_POST_VARS["nazwa"] przy wysłaniu formularza typu <form action="bla.php" method="post"><textarea name="nazwa"></T E X T A R E A><input...type="submit"></form> po uprzednim wpisaniu do <textarea> wartości $cos. Hmm... Chyba lepiej nie jestem w stanie wytłumaczyć...

0

Rozwiazanie masz pod nosem: http://4programmers.net/view.php?id=87

0

Hmmm... Cały problem polega na tym, że nie działa...

0

Rozwiazanie masz pod nosem: http://4programmers.net/view.php?id=87

Właśnie, to niedziała. Mnie wyskakuje w emailu błąd polecenia HELO!!

Może ktoś podać dobry kod na wysłanie emaila pod serwer SMTP bez funkcji mail(); ??

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0