PHP obrazac za registraciju koristeći GET, POST metode s primjerom

Što je obrazac?

Kada se prijavite na web mjesto ili u svoj poštanski sandučić, vi komunicirate s obrascem.

Obrasci se koriste za dobivanje unosa od korisnika i njihovo slanje web poslužitelju na obradu.

Donji dijagram ilustrira postupak rukovanja obrascem.

PHP obrazac

Obrazac je HTML oznaka koja sadrži stavke grafičkog korisničkog sučelja kao što su okvir za unos, radio gumbi potvrdnih okvira itd.

Obrazac je definiran pomoću … oznake i GUI stavke definiraju se pomoću elemenata obrasca kao što su unos.

Kada i zašto koristimo obrasce?

  • Obrasci su korisni pri razvoju fleksibilnih i dinamičnih aplikacija koje prihvaćaju korisnički unos.
  • Obrasci se mogu koristiti za uređivanje već postojećih podataka iz baze

Stvorite obrazac

Koristit ćemo HTML oznake za izradu obrasca. Ispod je minimalni popis stvari koje su vam potrebne za izradu obrasca.

  • Otvaranje i zatvaranje oznaka obrazaca …
  • Podnošenje obrasca tipa POST ili GET
  • URL za slanje koji će obraditi poslane podatke
  • Polja za unos kao što su okviri za unos, tekstualna područja, gumbi, potvrdni okviri itd.

Kod u nastavku stvara jednostavan obrazac za registraciju

<html>
<head>
	<title>Registration Form</title>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>

    <h2>Registration Form</h2>

    <form action="registration_form.php" method="POST"> First name:

        <input type="text" name="firstname"> <br> Last name:

        <input type="text" name="lastname"> 

        <input type="hidden" name="form_submitted" value="1" />

        <input type="submit" value="Submit">

    </form>
</body>
</html>

Pregledavanje gornjeg koda u web pregledniku prikazuje sljedeći obrazac.

Stvorite obrazac

OVDJE,

  • … su oznake za otvaranje i zatvaranje obrasca
  • action=”registration_form.php” method=”POST”> navodi odredišni URL i vrstu podnošenja.
  • Ime/Prezime: su oznake za polja za unos
  • su oznake okvira za unos
  • je oznaka novog retka
  • je skrivena vrijednost koja se koristi za provjeru je li obrazac predan ili ne
  • je gumb koji kada se klikne šalje obrazac poslužitelju na obradu

Slanje podataka obrasca na poslužitelj

Atribut radnje obrasca navodi URL podnošenja koji obrađuje podatke. Atribut metode navodi vrstu podnošenja.

PHP POST metoda

  • Ovo je ugrađena PHP super globalna varijabla polja koja se koristi za dobivanje vrijednosti poslanih putem HTTP POST metode.
  • Varijabli niza može se pristupiti iz bilo koje skripte u programu; ima globalni opseg.
  • Ova je metoda idealna kada ne želite prikazati vrijednosti objave obrasca u URL-u.
  • Dobar primjer korištenja post metode je slanje podataka za prijavu na poslužitelj.

Ima sljedeću sintaksu.

<?php
 $_POST['variable_name'];
?>

OVDJE,

  • “$_POST[…]” je PHP polje
  • “'variable_name'” je naziv URL varijable.

PHP GET metoda

  • Ovo je ugrađena PHP super globalna varijabla polja koja se koristi za dobivanje vrijednosti poslanih putem HTTP GET metode.
  • Varijabli niza može se pristupiti iz bilo koje skripte u programu; ima globalni opseg.
  • Ova metoda prikazuje vrijednosti obrasca u URL-u.
  • Idealan je za obrasce tražilica jer omogućuje korisnicima da rezerviraju oznake rezultata.

Ima sljedeću sintaksu.

<?php
$_GET['variable_name'];
?>

OVDJE,

  • “$_GET[…]” je PHP polje
  • “'variable_name'” je naziv URL varijable.

GET vs POST metode

POST GET
Vrijednosti nisu vidljive u URL-u Vrijednosti vidljive u URL-u
Nema ograničenja duljine vrijednosti budući da se šalju putem tijela HTTP-a Ima ograničenje duljine vrijednosti obično 255 znakova. To je zato što se vrijednosti prikazuju u URL-u. Imajte na umu da gornja granica znakova ovisi o pregledniku.
Ima nižu izvedbu u usporedbi s Php_GET metodom zbog vremena utrošenog na enkapsulaciju Php_POST vrijednosti u HTTP tijelu Ima visoku izvedbu u usporedbi s POST metodom zbog jednostavne prirode dodavanja vrijednosti u URL.
Podržava mnoge različite tipove podataka kao što su nizovi, numerički, binarni itd. Podržava samo vrste podataka niza jer se vrijednosti prikazuju u URL-u
Rezultati se ne mogu označiti knjigom Rezultati se mogu označiti knjigom zbog vidljivosti vrijednosti u URL-u

Donji dijagram pokazuje razliku između get i post

GET vs POST metode

GET vs POST metode

Obrada podataka iz upisnice

Obrazac za registraciju sam sebi dostavlja podatke kako je navedeno u atributu akcije obrasca.

Kada se obrazac pošalje, vrijednosti se popunjavaju u $_POST super globalnom polju.

Koristit ćemo PHP funkciju isset da provjerimo jesu li vrijednosti obrasca ispunjene u $_POST nizu i obradimo podatke.

Izmijenit ćemo obrazac za registraciju kako bismo uključili PHP kod koji obrađuje podatke. Ispod je modificirani kod

<html>
<head>
	<title>Registration Form</title>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</head>
<body>

    <?php if (isset($_POST['form_submitted'])): ?> //this code is executed when the form is submitted

        <h2>Thank You <?php echo $_POST['firstname']; ?> </h2>

        <p>You have been registered as
            <?php echo $_POST['firstname'] . ' ' . $_POST['lastname']; ?>
        </p>

        <p>Go <a href="/hr/registration_form.php">back</a> to the form</p>

        <?php else: ?>

            <h2>Registration Form</h2>

            <form action="registration_form.php" method="POST">

                 First name:
                <input type="text" name="firstname">
                
                <br> Last name:
                <input type="text" name="lastname">
                
			<input type="hidden" name="form_submitted" value="1" />

                <input type="submit" value="Submit">

            </form>

      <?php endif; ? > 
</body> 
</html>

OVDJE,

  • provjerava je li ispunjeno skriveno polje form_submitted u nizu $_POST[] i prikazuje poruku zahvale i imena.

    Ako polje form_fobmitted nije popunjeno u nizu $_POST[], obrazac se prikazuje.

Više primjera

Jednostavna tražilica

Dizajnirat ćemo jednostavnu tražilicu koja koristi PHP_GET metodu kao vrstu slanja obrasca.

Radi jednostavnosti, koristit ćemo a PHP If izjava za određivanje izlaza.

Koristit ćemo isti HTML kod za gornji obrazac za registraciju i minimalno ga modificirati.

<html>
<head>
	<title>Simple Search Engine</title>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>

    <?php if (isset($_GET['form_submitted'])): ?>

        <h2>Search Results For <?php echo $_GET['search_term']; ?> </h2>
        <?php if ($_GET['search_term'] == "GET"): ?>

            <p>The GET method displays its values in the URL</p>

            <?php else: ?>
            	 <p>Sorry, no matches found for your search term</p>

            <?php endif; ?>

                <p>Go <a href="/hr/search_engine.php">back</a> to the form</p>

                <?php else: ?>

                   <h2>Simple Search Engine - Type in GET </h2>

                   <form action="search_engine.php" method="GET">

                        Search Term:
                        <input type="text" name="search_term">
                        <br>
                            
			<input type="hidden" name="form_submitted" value="1" />

                       <input type="submit" value="Submit">
                       
                  </form>
               <?php endif; ?>
</body>
</html>

Pogledajte gornju stranicu u web pregledniku

Prikazat će se sljedeći obrazac

Jednostavna tražilica

Upišite GET velikim slovima, a zatim kliknite gumb za slanje.

Prikazat će se sljedeće

Jednostavna tražilica

Donji dijagram prikazuje URL za gore navedene rezultate

Jednostavna tražilica

Imajte na umu da je URL prikazao vrijednost search_term i form_submitted. Pokušajte unijeti bilo što drugačije od GET, a zatim kliknite na gumb za slanje i pogledajte kakve ćete rezultate dobiti.

Rad s potvrdnim okvirima, radio gumbima

Ako korisnik ne odabere potvrdni okvir ili radio gumb, ne šalje se vrijednost, ako korisnik odabere potvrdni okvir ili radio gumb, šalje se vrijednost jedan (1) ili istina.

Izmijenit ćemo kod obrasca za registraciju i uključiti gumb za provjeru koji korisniku omogućuje prihvaćanje uvjeta usluge.

<html>
<head>
	<title>Registration Form</title>
	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
    <?php if (isset($_POST['form_submitted'])): ?>
        <?php if (!isset($_POST['agree'])): ?>
            <p>You have not accepted our terms of service</p>
            <?php else: ?>
                <h2>Thank You <?php echo $_POST['firstname']; ?></h2>
                <p>You have been registered as
                    <?php echo $_POST['firstname'] . ' ' . $_POST['lastname']; ?>
                </p>
                <p> Go <a href="/hr/registration_form2.php">back</a> to the form</p>
            <?php endif; ?>
            <?php else: ?>
                        <h2>Registration Form</h2>
                        <form action="registration_form2.php" method="POST">
                            First name:
                            <input type="text" name="firstname">                           
                            <br> Last name:
                            <input type="text" name="lastname">                            
                            <br> Agree to Terms of Service:
                            <input type="checkbox" name="agree">
                            <br>
                            <input type="hidden" name="form_submitted" value="1" />
                            <input type="submit" value="Submit">
                        </form>
	<?php endif; ?>
</body>
</html>

Pregledajte gornji obrazac u pregledniku

Rad s potvrdnim okvirima, radio gumbima

Ispunite ime i prezime

Imajte na umu da potvrdni okvir Prihvaćam uvjete usluge nije odabran.

Kliknite gumb za slanje

Dobit ćete sljedeće rezultate

Rad s potvrdnim okvirima, radio gumbima

Kliknite vezu natrag na obrazac, a zatim potvrdite okvir

Rad s potvrdnim okvirima, radio gumbima

Kliknite gumb za slanje

Dobit ćete sljedeće rezultate

Rad s potvrdnim okvirima, radio gumbima

Rezime

  • Obrasci se koriste za dobivanje podataka od korisnika
  • Obrasci se izrađuju pomoću HTML oznaka
  • Obrasci se mogu poslati poslužitelju na obradu koristeći POST ili GET metodu
  • Vrijednosti obrasca poslane metodom POST kapsuliraju se u HTTP tijelo.
  • Vrijednosti obrasca poslane metodom GET dodaju se i prikazuju u URL-u.