BAZA WIEDZY
KURSY
Bazy danych w PHP
Kurs AdvancedAJAX
Kurs ASP
Kurs ASP.NET
Kurs C++
Kurs CSS
Kurs HTML
Kurs HTML drugi
Kurs JavaScript
Kurs MySQL
Kurs PHP
Kurs RSS
Kurs XHTML
Obiekty DOM
MANUALE
CSS1 - W3C
DOM - w budowie
PHP 2005
PHP 2006
Wyrażenia regularne
SHOUTBOX
STAT
Online: 41 | UU: 1085
[PHP] Jak zrobić formularz kontaktowy z wysyłką maili?
Porady PHP | 16 luty 2009 | Wizyt: 80200

Bardzo często stosowanym na stronach www elementem, jest formularz kontaktowy wysyłający wiadomości email. Wykonianie takiego formularza to dosyć prosta sprawa.

Kod będzie składał się z dwóch części. Kod Html odpowiedzialny za wyświetlanie formularza. PHP odbierający dane z formularza i wysyłający mail.

Wszystko to może znajdować się w przykładowym pliku index.php

Kod: php

<?php
if($_POST[‘wyslij’]) //Gdy wcisniety jest przycisk wyslij w formularzu
{
    mail(‘wembmaster@strona.pl’, $_POST[‘temat’], $_POST[‘komentarz’], ‘From: ‘.$_POST[‘email_nadawcy’]);
}
?>

Powyższy zapis sprawdza czy wciśnięty został przycisk wyślij w formularzu. Jeżeli tak to funkcja mail() wysyła wiadomość. Jako argumenty pobiera wartości z pól formularza np. $_POST[’temat’] pobiera wartość z pola <INPUT TYPE="TEXT" NAME="temat" />. Kolejne argumenty to: do (adres odbiorcy), temat, treść wiadomości, nagłówki (np. od kogo wysyłana jest wiadomość). Jeżeli przycisk nie zostanie wciśnięty wykonana zostanie poniższa część kodu - wyświetli się formularz:

Kod: php

<?php
else {
?>
  <form method="post" action="index.php">
    //index.php = plik, ktory sie wykona po wyslaniu formularza
    E-Mail: <INPUT TYPE="TEXT" NAME="email_nadawcy" size=60>
    Temat: <INPUT TYPE="TEXT" NAME="temat" size=60>
    Komentarz: <TEXTAREA NAME="komentarz" rows=10 cols=30></TEXTAREA>
    <input type="submit" name="wyslij" value="wyslij">
  </form>
<?php } ?>

To prosty przykład formularza kontaktowego. Należałoby jeszcze zabezpieczyć pola formularza poprzez odpowiednią walidację wpisywanej do nich treści, ale to już temat na inną poradę. Uwaga powyższy przykład może nie działać prawidłowo ze względu na stosowane w różnych firmach hostingowych utrzymujących pocztę filtry i blokady. Testowany był, gdy wiadomość wysyłana była na adres @o2.pl (argument do w funkcji mail()).

Cały kod:

Kod: php

<?php
if($_POST[‘wyslij’]) //Gdy wcisniety jest przycisk wyslij w formularzu
{
    mail(‘webmaster@strona.pl’, $_POST[‘temat’], $_POST[‘komentarz’], ‘From: ‘.$_POST[‘email_nadawcy’]);
}

else
{
?>
 
  <form method="post" action="index.php">
    //index.php = plik, ktory sie wykona po wyslaniu formularza
    E-Mail: <INPUT TYPE="TEXT" NAME="email_nadawcy" size=60>
    Temat: <INPUT TYPE="TEXT" NAME="temat" size=60>
    Komentarz: <TEXTAREA NAME="komentarz" rows=10 cols=30></TEXTAREA>
    <input type="submit" name="wyslij" value="wyslij">
  </form>

 
<?php
}
?>

Autor: Adam Suchowski 

nowe Porady PHP » zobacz wszystkie

WordPress database error: [Table './asior3/wp_comments' is marked as crashed and last (automatic?) repair failed]
SELECT * FROM wp_comments WHERE comment_post_ID = '1391' AND comment_approved = '1' ORDER BY comment_date desc

Dodaj komentarz









 
Copyright © 2006-2013 egrafik.pl | Kontakt | Reklama | Projekty domów
jocker