Når vi skal indsætte data bliver der lidt flere trin. Det foregår nogenlunde i den her rækkefølge:
- Lav en HTML form, som brugeren kan indtaste felterne i (fx titel, starttidspunkt, sluttidspunkt)
- Når brugeren trykker Send kaldes siden igen – nu med disse variable gemt i et såkaldt POST array, og så
- Bygges et sql insert statement (fx INSERT INTO BEGIVENHED(‘titel’) VALUES (‘Nyt LAN Party’) etc…)
- Kør dette sql på serveren og tjek for fejl
- Vis meddelelse til brugeren
Lyder det kompliceret? Det er det ikke – kopier følgende ind på endnu en php side, som du kalder insert.php
<?php include 'connect.php'; #hvis siden har kaldt sig selv med variable i et POST array if (!empty($_POST)){ #Gem og escape variablene fra POST arrayet $titel = $conn->real_escape_string($_POST['titel']); $dato = $conn->real_escape_string($_POST['dato']); $pladser = $conn->real_escape_string($_POST['pladser']); $sql = "INSERT INTO Begivenhed (titel, dato, pladser) VALUES ('$titel','$dato',$pladser)"; if ($conn->query($sql) === TRUE) { echo "Ny begivenhed oprettet"; }else{ echo "Fejl: " . $sql . "<br>" . $conn->error; } } ?> <!--Her er formen, som brugeren indtaster i - bemærk at action="" - url'en er tom, altså kalder siden sig selv--> <form action="" method="post"> <label for="titel">Titel</label><br> <input type="text" name="titel"><br> <label for="dato">Dato</label><br> <input type="date" name="dato"><br> <label for="pladser">Pladser</label><br> <input type="number" name="pladser"><br> <input type="submit" name="gem"> </form>