Această pagină:
Uneori ai nevoie să dai posibilitatea utilizatorilor să îți scrie direct din website, iar alteori ai nevoie să trimiți mesaje e-mail folosind funcția PHP mail().
Această pagină îți dă un exemplu de cum funcția PHP mail() poate fi folosită și de cum poți crea în doar 5 minute un formular e-mail pentru utilizatorii websiteului tău.
Funcția test_form() îți permite să specifici ce câmpuri trebuiesc verificate și cum anume.
Ai la dispoziție trei opțiuni:
Aceste opțiuni pot fi extinse cu mare ușurință. Pentru detalii citește explicațiile în codul sursă.
function test_form($config) {
$keys = array_keys($config);
foreach($keys as $post) {
$str = $_POST[$post];
$rules = explode('|', $config[$post]);
foreach($rules as $rule) {
switch ($rule) {
case 'required':
if(trim($str) == '') return FALSE;
break;
case 'email':
if( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $str)) return FALSE;
break;
case 'str':
if( ! preg_match("/^([A-z ])+$/i", $str)) return FALSE;
break;
}
}
}
}
Codul următor setează regulile de validare, validează formularul e-mail și trimite mesajul email la adresa specificată.
/*
* Explicație: 'name' => 'required|str' se traduce astfel:
* 'name' este numele câmpului din formularul HTML care trebuie verificat
* 'required|str' sunt regulile în funcție de care câmpul formularului va fi verificat
*
* Spre exemplu, dacă vrei să adaugi un câmp Telefon, îl poți denumi 'phone' fără a îl menționa în array-ul de configurare $config
* Dacî însă, vrei să verifici că acest acest câmp este un număr de telefon valid, creezi o regulă 'phone' pe care o adaugi funcției test_form().
* La final, completezi array-ul $config cu noul câmp și regula aferentă:
*
* $config['phone'] = 'phone' sau $config['phone'] = 'required|phone'.
*
* În cel de-al doilea caz câmpul Phone devine obligatoriu.
*/
$config = array(
'name' => 'required|str',
'email' => 'required|email',
'msg' => 'required'
);
if(test_form($config) === FALSE) {
print $error_msg;
} else {
$to = 'nume@domeniu.extensie';
$subject = 'Formular e-mail';
$message = $_POST['msg'];
$headers = 'From: ' . $_POST['name'] . ' <' . $_POST['email'] . '>' . "\r\n" .
'MIME-Version: 1.0' . "\r\n" .
'Content-type: text/html; charset=utf-8' . "\r\n" .
'Reply-To: ' . $_POST['email'] . "\r\n" .
'X-Mailer: PHP/' . phpversion();
print (mail($to, $subject, $message, $headers) === TRUE) ? $success_msg : $error_msg;
}
Descarcă email.php, deschide-l cu Notepad++ pentru a studia codul sursă și folosește XAMPP pentru a testa cum funcționează direct pe calculatorul tău. Succes!
RECOMANDARE! Folosește și tu Kaspersky Internet Security antivirusul pe care eu îl folosesc cu succes de mai bine de 7 ani.
Iată tehnologiile web pe care le folosesc
Trebuie să ai această carte! Este modul cel mai simplu de a afla de ce și cum trebuie să construiești un caracter puternic cu ajutorul căruia să obții ceea ce-ți propui, să ai succes în viață și să ajungi Dragostea Adevărată. - Succes! -
* Disponibilă doar pe www.Trim.ro
Cumpără
36.90RON
Citește ultimul articol
Alege Cosmote, Vodafone sau Orange; principalii operatori de telefonie mobila care pun la dispoziție servicii de internet mobil pe calculatorul tău.
Vezi ultima înregistrare video
Acesta este primul din cele 10 episoade care îți vor arăta cum să folosești CodeIgniter, librăria PHP cu care poți realiza aplicații web inteligente.
«Cu cât clientul va fi mai mulțumit cu atât vei câștiga mai mult din colaborarea cu el.»
creare website, standarde și competitivitate