În lecția noastră de formulare PHP am folosit metoda post. Iată cum arăta linia relevantă de cod HTML:
Extract de cod HTML:
<form action="process.php" method="post">
<select name="item">
...
<input name="cantity" tip="text" />
Acest cod HTML specifică faptul că datele formularului vor fi trimise către pagina web „process.php” folosind metoda POST. Modul în care PHP face acest lucru este să stocheze toate valorile „postate” într-o matrice asociativă numită „$_POST”. Asigurați-vă că țineți cont de numele numelor de date din formular, deoarece acestea reprezintă cheile din matricea asociativă „$_POST”.
Acum că știți despre matricele asociative, codul PHP de la „process.php” ar trebui să aibă puțin mai mult sens.
Extract cod PHP:
$cantity = $_POST['cantity'];
$item = $_POST['item'];
Numele formularelor sunt folosite ca chei în matricea asociativă, așa că asigurați-vă că nu aveți niciodată două elemente de intrare în formularul HTML care au același nume. Dacă faceți acest lucru, este posibil să observați că apar unele probleme.
php – obține
Așa cum am menționat anterior, alternativa la metoda post este get. Dacă ar fi să ne schimbăm formularul HTML în metoda get, ar arăta astfel:
Extract de cod HTML:
<form action="process.php" method="get">
<select name="item">
...
<input name="cantity" tip="text" />
Metoda get este diferită prin faptul că transmite variabilele către pagina web „process.php” adăugându-le la sfârșitul adresei URL. Adresa URL, după ce faceți clic pe Trimitere, va fi adăugată la sfârșitul acesteia:
"?item=##&quantity=##"
Semnul întrebării „?” spune browserului că următoarele elemente sunt variabile. Acum că am schimbat metoda de trimitere a informațiilor pe „order.html”, trebuie să schimbăm codul „process.php” pentru a folosi matricea asociativă „$_GET”.
Extract cod PHP:
$cantity = $_GET['cantity'];
$item = $_GET['item'];
După schimbarea numelui matricei, scriptul va funcționa corect. Folosind metoda getmethod afișează informațiile variabile vizitatorului dvs., deci asigurați-vă că nu trimiteți informații despre parolă sau alte elemente sensibile cu metoda get. Nu ai dori ca vizitatorii tăi să vadă ceva ce nu ar trebui să facă!