Formularz Kontaktowy - Czy Poprawny

0

Witam! Robie strone internetowa znajomego, ktory poprosił mnie bym umieścił na nim formularz kontaktowy ktory bedzie wysyłał wiadomość na jego maila.
Niestety mam jako taka wiedze na temat html, css, javascript ale nigdy nic nie robiłem w php, a wyczytałem ze formularze tylko w tym jezyku. Załóżmy że kolega bedzie miał hosting z php5 i funkcją mail().
Teraz moje pytanie jest następujące, czy taki kod wystarczy aby po wrzuceniu na strone wszystko zadziałało??

<body>
 <form method="POST" action="mail.php">
  wyślij do mnie maila :
  <input type="text" name="wiadomosc">
  <br>
  <input type="submit" value="Wyślij">
 </form>
</body>

a jesli nie to co musze zmienić?

<? 
$wiadomosc=$_POST['wiadomosc'];
if (mail("[email protected]", "temat", $wiadomosc))
{
echo "mail został wysłany";
}
else
{
echo "mail  NIE został wysłany";
}
?> 
0

Przede wszystkim wypadałoby dodać dane autoryzacyjne - niech ten mail będzie wysyłany z jakiegoś konta. Poza tym polecam bibliotekę PHPMailer. Jeśli hosting faktycznie umożliwia korzystanie z funkcji mail bez żadnych autoryzacji to ok - powinno działać, nie znam na pamięć składni, ale sprawdź jeszcze czy przekazujesz dobre parametry do funkcji mail (coś mi nagłówków brakuje).

1

Mail jest niewiarygodne, nawet jak zwraca true! A to tylko jedna z jej dziesiątek wad. To jest "surowa" funkcja, dla BARDZO wtajemniczonych w PROTOKÓŁ, nie narzędzie do codziennej wysyłki maili. Wczoraj o tym już pisałem i piszę jakieś 20 razy w roku minimum. Nie używaj tej funkcji do wysyłania maili!

0

Użyj tego. Tutaj masz przykład dla gmaila, a tutaj nawet po polsku.

0

A co jeśli hosting na którym jest ta strona nie pozwala na użycie PHPMailer albo SwiftMailer tylko na użycie tejże funkcji mail?

Załóżmy że bez załącznika:

    $subject = "Test email";
    $message = "foo bar";  
   
    $headers = "MIME-Version: 1.0" . "\r\n";
    $headers .= "Content-type: text/plain; charset=utf-8" . "\r\n";
    $headers .= "From: nadawca@domena" . "\r\n";
    mail("odbiorca@domena", $subject, $message, $headers);

A co do formularza przedstawionego w pierwszym poście:

curl -X POST http://jakasstrona.pl/mail.php -d "wiadomosc=jakis spam"

I co jeśli jakiś dowcipmiś użyje takiego polecenia w jakiejś pętli w plikach wsadowych .bat albo w skryptach .sh?

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