NemProgrammering.dk logo
nordicway webhotel

Prepared statements med objektorienteret MySQLi

MySQLi OOP kursus | Lær at arbejde med objektorienterede databaser
WordPress hjemmeside hjælp

Information om denne video

Underviser: Jeppe Borggaard Jørgensen

I denne sidste video kigger vi på, hvordan du anvender prepared statements med objektorienteret MySQLi. Vi gennemgår både teorien og viser praktiske eksempler.

Øvelser:
1 - Lav et prepared statement, der henter alle dine varer fra dit varelager. Den skal hente navne, og udprinte dem.

2 - Udprint en enkelt vare, ved at bruge en sammenligning af navn og pris. Din SQL sætning skal derfor indeholder 2 WHERE betingelser, og bruge AND. Brug prepared statements. Udskriv navnet og prisen på denne vare.

3 - Lav et script, der henter en vare, baseret på en GET parameter. Brugeren kan angive navnet i URL’en som en GET værdi, og via prepared statement skal du så hente den vare, som han leder efter. Se evt. vores video om GET metoden i PHP, hvis du har brug for at få dette opfrisket.

4 - Overfør øvelse 3 til at bruge POST, og lav en formular med tekstfelter! Du laver nu et søgningsværktøj til dit lager. Brugeren skal have 2 tekstfelter (navn og pris) som han kan indtaste i. Når han trykker submit, skal du via POST finde og udskrive de varer, som der matcher hans søgning. Se evt. vores video om POST data metoden i PHP, hvis du har brug for at få dette opfrisket.

Dette er en svær øvelse, da den berører mange emner indenfor PHP. Det er dog en god øvelse, der netop kommer omkring en masse centrale og vigtige emner!

Video tags:

Denne video relaterer til emner såsom: SQL OOP, PHP og MySQLi OOP kursus, MySQLi videotutorial, objektorienteret MySQLi vejledning, dansk video tutorial, lær objektorienteret MySQLi OOP, objektorienteret MySQLi for begyndere, MySQLi OOP API, objektorienteret MySQLi fra bunden, Prepared statements.

Her har du kildekoden

// index.php
<?php
   require_once 'Connect_db.php';
   
   $tal = 23;
   $navn = 'Jens Jensen';
   
   $stmt = $mysqli->prepare("SELECT name, age FROM persons WHERE age=? AND name=?");
   $stmt->bind_param("is", $tal, $navn);
   $stmt->execute();
   
   $stmt->bind_result($name, $age);
   while ($stmt->fetch()) {
       echo $name . " - " . $age . "<br>";
   }
   
   $stmt->close();
?>

Spørgsmål og kommentarer

Har du spørgsmål eller kommentarer? Så skriv herunder og vi eller en anden lœser vil svare hurtigst muligt!

Url´er bliver automatisk omdannet til links (nofollow).

kommentar på NemProgrammering.dk - lav din egen hjemmeside
Daniel    01-01-1970

Hej Mange tak for de utroligt hjælplige videoer, jeg sidder som praktikant ved et it firma hvor der er travlt og presset så det har været fantastisk at jeg har kunne ''nørde'' her inde. Nu til mit spørgsmål: Hvis jeg vil hente data fra tabel der er oprettet inde på databasen hvordan skal jeg så ændre min ''connect._db'' er det muligvis den socket vi ikke skulle bruge? � Ellers skide gode guides/tutorials, det eneste jeg lige kunne påpege var en forklaring på ting som vi ikke bruger. Det kan også godt ske det bare er fordi jeg gerne vil have en udvidet version af basicly alle jeres guides/tutorials. Nemprogrammering.dk ligger til en ug+


kommentar på NemProgrammering.dk - lav din egen hjemmeside
Martin Lindal Hansen    08-06-2017

Khaled: Hvis jeg forstår dig ret, så prøv med: $alder = 20 $stmt = $mysqli -> prepare("SELECT * FROM persons WHERE age = ?"); $stmt -> bind_param("i", $alder); $stmt -> execute(); I "bind_result" skal du så inkludere hele datasættet, som du jo efterspørger, som følger: $stmt -> bind_result($name, $age, $phone); while ($stmt -> fetch() ) { echo $name . "-" . $age . - . $phone . "<br>";


kommentar på NemProgrammering.dk - lav din egen hjemmeside
Khaled    03-02-2015

På jeres video laver i SELECT name FROM persons WHERE age=? Så putter man name som en variabel senere når man skal printe den. Men hvad nu hvis man laver SELECT * FROM persons WHERE age=? hvilke variabel skal man så sæt hvis man vil printe den?


kommentar på NemProgrammering.dk - lav din egen hjemmeside
Thomas    03-02-2015

Hej Kahled, Se her for et svar på den fejl du får: http://stackoverflow.com/questions/27394710/fatal-error-call-to-a-member-function-bind-param-on-boolean Jeg er ikke helt med på hvad du mener med select * from. I eksemplet i videoen er det netop det vi gør? Mvh.


kommentar på NemProgrammering.dk - lav din egen hjemmeside
Khaled    03-02-2015

Hejsa har 2 spørgsmål hvad nu hvis man skal select * from..... hvordan skal man så taste det ind? Og når jeg gøre det i har gjort får jeg: Fatal error: Call to a member function bind_param() on boolean in C:\xampp\htdocs\PHP\soeg.php on line 13