PHP & MySQL - INSERT Query


Umetanje podataka u tabelu baze podataka MySQL

Sada kada ste shvatili kako kreirati bazu podataka i tabelu u MySQL-u, vrijem je da naučite kako izvršiti SQL upit za umetanje zapisa u tabelu. Izraz INSERT INTO koristi se za umetanje novih redova u tabelu baze podataka.Napravimo SQL upit pomoću izraza INSERT INTO s odgovarajućim vrijednostima, nakon čega ćemo izvršiti ovaj upit za umetanje prosljeđujući ga PHP funkciji mysqli_query() za umetanje podataka u tabelu. Evo primjera koji ubacuje novi red u tabelu osoba (person) navodeći vrijednosti za polja first_name, last_name i email.


Ako se sjećate iz prethodne lekcije, polje id je bilo označeno oznakom AUTO_INCREMENT. Ovaj modifikator govori MySQL-u da automatski dodijeli vrijednost ovom polju ako ostane neodređeno, povećavanjem prethodne vrijednosti za 1.



Umetanje više redova u tabelu

Takođe možete istovremeno umetnuti više redova u tabelu s jednim upitom za umetanje. Da biste to učinili, uključite više popisa vrijednosti kolona unutar naredbe INSERT INTO, gdje vrijednosti kolona za svaki red moraju biti zatvorene u zagradama i odvojene zarezom. Ubacimo još nekoliko redova u tabelu osoba (person), ovako:


Sada idite na phpMyAdmin (http://localhost/ phpmyadmin/) i pogledajte podatke tabele osoba (person) unutar demo baze podataka. Vidjećete da se vrijednost za kolonu id dodjeljuje automatski povećavanjem vrijednosti prethodnog id za 1.



Umetanje podataka u bazu podataka iz HTML obrasca

U prethodnom dijelu naučili smo kako umetnuti podatke u bazu podataka iz PHP skripte. Sada ćemo vidjeti kako možemo umetnuti podatke u bazu podataka dobijenih iz HTML obrasca. Stvorimo HTML obrazac koji se može koristiti za umetanje novih zapisa u tabelu osoba (person).


Korak 1: Izrada HTML obrasca

Evo jednostavnog HTML obrasca koji ima tri tekstualna <input> polja i dugme za slanje podataka.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Dodavanje obrazaca zapisa</title>
</head>
<body>
<form action="insert.php" method="post">
    <p>
        <label for="firstName">Ime:</label>
        <input type="text" name="first_name" id="firstName">
    </p>
    <p>
        <label for="lastName">Prezime:</label>
        <input type="text" name="last_name" id="lastName">
    </p>
    <p>
        <label for="emailAddress">Email:</label>
        <input type="text" name="email" id="emailAddress">
    </p>
    <input type="submit" value="Pošalji">
</form>
</body>
</html>

Korak 2: Dohvatanje i umetanje podataka obrasca

Kada korisnik klikne na dugme za slanje HTML obrasca za dodavanje zapisa, u gornjem primjeru podatke obrasca šalje u datoteku 'insert.php'. Datoteka 'insert.php' povezuje se s MySQL poslužiteljem baze podataka, dohvata polja obrazaca pomoću PHP varijable $_REQUEST i na kraju izvršava upit za umetanje za dodavanje zapisa. Evo kompletnog koda naše datoteke 'insert.php':


U sljedećoj lekciji proširićemo ovaj primjer upita za umetanje i poduzeti korak dalje primjene pripremljene izjave za bolju sigurnost i performanse.

Ovo je osnovni primjer umetanja podataka obrazaca u tabelu baze podataka MySQL. Možete proširiti ovaj primjer i učiniti ga interaktivnijim dodavanjem provjera valjanosti korisničkih unosa prije umetanja u tabelu baze podataka. Pogledajte lekciju o validaciji PHP obrasca da biste saznali više o saniranju i provjeri valjanosti korisničkih unosa pomoću PHP-a.