Formok és a PHP

Felhasznált php parancsok:

Ez a leírás a HTML formok és a php kapcsolatát tervezi bemutatni, és rögtön készítünk is egy kis programot, amellyel a látogatóink küldhetnek nekünk üzenetet a weblapról. Első körben kell egy alap HTML form, amibe a felhasználók írhatnak.

mail.html

1
2
3
4
5
6
7
8
9
10
11
12
<html>
<body>
 
<form method="post"action="sendmail.php">
Név:<input type="text"name="your_name">
Email cim:<input type="text"name="email_address">
Hozzászólás:<textarea name="comment"></textarea>
<input type="submit"value="Hosszászólás elküldése">
</form>
 
</body>
</html>

Ezt a formot elnevezhetjük bárhogyan, az a lényeg, hogy olyan helyre kerüljön, ahol a felhasználók elérhetik. Mi az egyszerűség kedvéért hívjuk mail.html-nek.

Akkor kezdjünk neki a php megírásának, hiszen azért vagyunk itt.
A PHP – amikor elpostolunk egy formot – automatikusan létrehozza a változókat.
Itt két eset lehetséges. Ha a php a register_globals = on beállítással fut, akkor létrejön a valtozó a form-ban „name”-ként megadott néven.
Ha a register_globals = off, akkor az adatainkat a $_GET, és a $_POST tömbben kereshetjük függően attól, hogy a form method részénél mit adtunk meg.
Mi a post módszert választottuk, tehát adatainkat a $_POST tömbben keressük.
Ezek után lehet egyszerűsíteni a dolgot, hogy egy rövidebb nevü változónak átadjuk a $_POST-ban tárolt értékeket, de ha csak 1x használjuk a változót, nem éri meg, gépelésen nem nyerünk semmit, ráadásul a változónk plusz helyet foglal a memóriában.

sendmail.php

1
2
3
4
5
6
7
8
9
10
if (isset ($_POST['your_name']) && isset($_POST['email_address']) && isset($_POST['comment']))
{
$their_name = $_POST['your_name'];
$their_email = $_POST['email_address'];
$their_comment = $_POST['comment'];
mail ('webmaster@enlapom.hu', 'Üzenet a Weblapról', "Név: $their_name Email: $their_email Hozzászólás: $their_comment" . date('d/m/Y H:i:s'), "FROM: $their_emailr Reply-To: $their_email"); }
else
{
echo ('Valamelyik mezőt üresen hagytad');
}

Jelen megoldásban én is a rossz példát választottam, hiszem egyszeri felhasználású változókat hoztam létre.

A mail függvény mint olyan a php egyik legtöbbet szidott függvénye (nem maga a függvény rossz, hanem sajnos a rengeteg egymással kevéssé kompatibilis levelezési formátum megvalósítása), és sajnos a legtöbb free szolgáltatónál le is van tiltva. Ezt kikerülhetjük ugyan SMTP class-ok alkalmazásával, de ez már a következő órák egyikének az anyaga lesz. Szintén azon az órán kerül majd terítékre a csatolt file küldés, és a HTML alapú levél.

HOZZÁSZÓLOK A CIKKHEZ

Kérjük, írja be véleményét!
írja be ide nevét