Simpatie.ro - matrimoniale
googlecs.3xforum.ro
googlecs.3xforum.ro
Nou pe simpatie:
Nicole23 Profile
Femeie
25 ani
Bucuresti
cauta Barbat
28 - 65 ani
googlecs.3xforum.roReguliInregistrareLoginPozeNu sunteti logat. Lista Forumurilor Pe Tematici
googlecs.3xforum.ro / Tutoriale PHP ! / PHP]Formular contact Pagini: 1  
#1
YaNy
Administrator
Postari: 74

"Unk [;x a scris:

"]In acest tutorial vei invata cum sa:
-trimiti un formular pe o adresa de mail
-verificarea campurilor unui forumular

Acest formular va avea 4 campuri simple nume, email, subiect, mesaj. Vom acoperii si partea html ulterior in tutorial
Incepem cu inceputul

[size=18]trimite.php[/size]

O sa impart scriptul in mai multe parti-sectiuni ca sa va explic pas cu pas ..

definim mailu:

Code:

define("catre"," .domeniu");

definim mesajul de eroare care va aparea daca campurile sunt goale..

Code:

$mesaj_eroare = 'Urmatoarele campuri sunt goale:<ul>';
$eroare = false;

acuma vom face functia care preia informatiile din campurile din formular

Code:

$submit = $_POST['submit'];
if(empty($submit))
$formular_trimis = false;
else
$forumular_trimis = true;

acuma sa traducem ce am scris mai sus ...daca formularul este gol nu trimite mail, daca nu trimite..pentru cei care ati facut limbaje de programare false/true sunt booleanuri....continuam...

Code:

if($formular_trimis) {
   $nume = $_POST['nume'];
   $email = $_POST['email'];
   $subiect = $_POST['subiect'];
   $mesaj = $_POST['mesaj'];

odul de mai sus preia informatiile din campurile: nume, email, subiect, mesaj.

Acuma vom verifica daca campurile sunt goale...

Code:

if(!$nume) { $msg_eroare .= "<li>Nume</li>"; $eroare = true; }
   if(!$email ) { $msg_eroare .= "<li>Adresa email</li>"; $eroare = true; }
   if(!$subiect ) { $msg_eroare .= "<li>Subiect</li>"; $eroare = true; }
   if(!$mesaj ) { $msg_eroare .= "<li>Mesaj</li>"; $eroare = true; }

in traducere: daca campul x este gol va aparea mesajul de eroare

Acuma vom verifica daca mailul este corect:

Code:

if($email) { if(!eregi("^[a-z0-9_]+@[a-z0-9\-]+\.[a-z0-9\-\.]+$", $email)){ $msg_eroare .= "<li>Adresa email</li>"; $eroare = true; }}
$msg_eroare .= "</ul>";

In traducere daca emailul nu este gen va aparea mesaj de eroare

Acuma trebuie sa aratam unde a gresit in completarea formularului ..

Code:

if (!$eroare) {
 
         $msg  = "Nume: \t $nume \n";
         $msg .= "Adresa email: \t $email \n";
         $msg .= "Subiect: \t $subiect\n";
         $msg .= "Mesaj: \n---\n $mesaj \n---\n";

Acuma va trebuie sa facem headerul mesajului

Code:

$heder_mail  = "NUMELE SITEULUI TAU AICI: 1.0\r\n";
         $heder_mail .= "Content-type: text/plain; charset=iso-8859-1\r\n";
         $heder_mail .= "De la: $nume <email>\r\n";
         $heder_mail .= "Raspunde catre: $nume <email>\r\n";

Si ultimu pas trimitrea propriuzisa a mailului

Code:

mail(catre, ,stripslashes($msg), $heder_mail);
   }
   }

[size=18]contact.php[/size]


Si acesta e html

Code:

?php include"trimite.php"; ?>
<html>
<head>
<meta>
</head>
<body>

<div>
   <Daca>
<php>
Mesaj aici daca mailul a fost trimis cu succes, <php>.
Acestea sunt informatiile care ni le-ati trimis: <br>
<php>
         </font>
<Aici>
         Va rugam sa completati toate campurile de pe aceast formular. Atentie!Campruile marcate cu(*) sunt obilgatorii.
<Acuma>
   


<br><form>
         <table>
            <tr>
               <td>
                  Nume (<font>*</font>)<br>
                  <input>               </td>
               </tr>
         </table>
         <table>
            <tr>
               <td>
               Adresa E-mail (<font>*</font>)<br>
                  <input>               </td>
               </tr>
         </table>
         <table>
            <tr>
               <td>
                  Subiect (<font>*</font>)<br>
                  <input>               </td>
            </tr>
         </table>
         <table>
            <tr>
               <td>
                  Mesaj (<font>*</font>)<br>
                  <textarea><php></textarea>               </td>
            </tr>
         </table>
         <table>
            <tr>
               <td>
                  <input>               </td>
            </tr>
         </table>
         </form><php>   </div>

Si inca odata
[size=18]trimite.php[/size]

Code:

</li>

Si acuma un plus...
de exemplu daca ai sa faci u nformular de comanda la un shop sau ceva...e destul de simplu doar adaugi mai multe campuri si mai multe linii la ..defapt uite exemplu

Code:

if($formular_trimis) {
   $nume = $_POST['nume'];//preluam datele din campul nume
   $email = $_POST['email'];//preluam datele din campul email
   $subiect = $_POST['subiect'];//preluam datele din campul subiect
   $mesaj = $_POST['mesaj'];//preluam datele din campul mesaj
   $firma = $_POST['firma'];//preluam datele din campul firma
   $produs_dorit = $_POST['firma'];//preluam datele din campul produs_dorit

dupa la verificare campurilor

Code:

if(!$nume) { $msg_eroare .= "<li>Nume</li>"; $eroare = true; }//Daca campul nume este necompletat arata eroare
   if(!$email ) { $msg_eroare .= "<li>Adresa email</li>"; $eroare = true; }//Daca campul email este necompletat arata eroare
   if(!$subiect ) { $msg_eroare .= "<li>Subiect</li>"; $eroare = true; }//Daca campul subiect este necompletat arata eroare
   if(!$mesaj ) { $msg_eroare .= "<li>Mesaj</li>"; $eroare = true; }//Daca campul mesaj este necompletat arata eroare
if(!$firma) { $msg_eroare .= "<li>Firma</li>"; $eroare = true; }//Daca campul mesaj este necompletat arata eroare
if(!$produs_dorit) { $msg_eroare .= "<li>Produsul dorit</li>"; $eroare = true; }//Daca campul mesaj este necompletat arata eroare

dupa pregatim datele adica continutul mailului


f (!$eroare) {

         $msg  = "Nume: \t $nume \n"; //pregatim datele
         $msg .= "Adresa email: \t $email \n";//pregatim datele
         $msg .= "Subiect: \t $subiect\n";//pregatim datele
         $msg .= "Mesaj: \n---\n $mesaj \n---\n";//pregatim datele
$msg .= "Firma: \n---\n $firma\n---\n";//pregatim datele
$msg .= "Produs dorit: \n---\n $produs_dorit\n---\n";//pregatim datele


 
   
Pagini: 1  
Mergi la