220 likes | 383 Views
PHP & MYSQL. LES 03 PHP & DATABASES. PHP & MYSQL. 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE. VORIGE KEER …. loops formulieren in html HTML data verwerken arrays functies. PHP & DATABASES. wat is (My)SQL PHPMyAdmin creëren van een tabel
E N D
PHP & MYSQL LES 03 PHP & DATABASES
PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE
VORIGE KEER … • loops • formulieren in html • HTML data verwerken • arrays • functies
PHP & DATABASES • wat is (My)SQL • PHPMyAdmin • creëren van een tabel • database verbinden met PHP • SELECT statements • INSERT statements • DELETE statements • UPDATE statements • veilig queries uitvoeren
PHP & Databaseswat is (My)SQL • SQL staat voor Structured Query Language, een taal waarin je makkelijk gegevens kan ophalen • MySQL is een DBMS en werkt erg goed met PHP Wat is dan een DBMS? • DBMS staat voor DataBase Management System, wat dus het beheren van gegevens behelst. • Denk aan een prullenmand gevuld met papier en een archiefkast waar papier netjes in geordend ligt. Wat zoekt sneller?
PHP & DatabasesPHPMyAdmin • MySQL kan worden gebruikt via een commandline • wij gebruiken een grafisch alternatief
PHP & Databasescreëren van een tabel 01 • Het creëren van een tabel in PHPMyAdmin is heel eenvoudig met de knop “nieuwe tabel aanmaken”
PHP & Databasescreëren van een tabel 02 • Net zoals bij PHP kent MySQL ook verschillende datatypen om gegevens op te slaan. Hier de meest voorkomende types. TINYINT / INTveld voor gehele getallen DOUBLEveld voor komma getallen VARCHAR / CHARveld voor ‘kleine’ strings TEXT / MEDIUMTEXTveld voor grotere strings
PHP & Databasesdatabase verbinden met PHP 01 • een databaseserver verbinding moet geopend en gesloten worden. • na het openen van de serververbinding moet de juiste database nog geopend worden. mysql_connect( $host, $gebruiker, $wachtwoord ) mysql_connect_db( $databasenaam ) … mysql_close()
PHP & Databasesdatabase verbinden met PHP 02 • een voorbeeld <?php mysql_connect(‘localhost’,’20050037’,’gtpv5RxQ’); mysql_select_db(‘docent_database’); // Voer iets uit met de database // zet misschien ook iets op het beeld mysql_close(); ?>
PHP & DatabasesSELECT statements 01 • SELECT wordt gebruikt om gegevens uit de database te halen SELECT * FROM docent WHERE naam = “Willem”; Gewoon nederlands: Geef mij alle gegevens van alle docenten waar de naam gelijk is met Willem.
PHP & DatabasesSELECT statements 02 • Nog een voorbeeld SELECT naam, telefoonnummer FROM docent ORDER BY naam; Gewoon nederlands: Geef mij de naam en het telefoonnummer van alle docenten en sorteer de resultaten op naam.
PHP & DatabasesSELECT statements 03 • hoe werkt dat in PHP $query = “ SELECT * FROM docent WHERE naam = ‘Willem’; ”; $result = mysql_query( $query ); while( $regel = mysql_fetch_array( $result )) { echo $regel[‘naam’] . “<br>”; }
PHP & DatabasesSELECT statements 04 • En nu met een opmaak in tabellen (extra) echo “<table>”; echo “<tr>\n<th>naam:</th>\n <th>telefoonnummer:</th>\n</tr> “; while( $regel = mysql_fetch_array( $result )) { echo “<tr>\n<td>”.$regel[‘naam’].“</td>\n”; echo “<td>”.$regel[‘telefoon’].“</td></tr>\n”; } echo “</table>”;
PHP & DatabasesINSERT statements 01 • INSERT wordt gebruikt om nieuwe gegevens in de database te zetten INSERT INTO docent VALUES (‘JB’,’Jaap’,’SL7.37’,’0704457643’,’36’); Gewoon nederlands: Voeg een docent toe aan de database met de volgende gegevens …
PHP & DatabasesINSERT statements 02 • hoe werkt dat in PHP $query = “INSERT INTO docent VALUES (‘JB’, ’Jaap’,’SL7.37’,’0704457643’,’36’) “; mysql_query( $query );
PHP & DatabasesDELETE statements 01 • DELETE wordt gebruikt om een regel (of meerdere regels) uit de database te halen DELETE FROM docent WHERE docentcode = ‘vli’; Gewoon nederlands: Verwijder alle docenten uit de database waarvan de docentcode ‘vli’ is.
PHP & DatabasesDELETE statements 02 • hoe werkt dat in PHP $query = “ DELETE FROM docent WHERE docentcode = ‘vli’; “; mysql_query( $query );
PHP & DatabasesUPDATE statements 01 • UPDATE wordt gebruikt bestaande gegevens in de database te wijzigen UPDATE docent SET telefoonnummer = ‘8513’ WHERE docentcode = ‘vlie’; Gewoon nederlands: Verander het telefoonnummer van de docent vli naar 8513.
PHP & DatabasesUPDATE statements 02 • UPDATE werkt ook om meerdere regels tegelijk aan te passen UPDATE docent SET uren_per_week = ‘36’ WHERE uren_per_week > ‘32’; Gewoon nederlands: Verander van alle docenten het aantal uur dat ze werken naar 36 uur, als ze meer dan 32 uur werken op dit moment.
PHP & DatabasesUPDATE statements 03 • Hoe werkt dat in PHP $query = “ UPDATE docent SET uren_per_week = ‘36’ WHERE uren_per_week > ‘32’; “; mysql_query( $query ); $aantalVeranderdeRijen = mysql_affected_rows();
PHP & Databasesveilig queries uitvoeren • gebruik niet direct variabelen in een query $motto = “It’s the way I like to slam’n’dunk”; $query = “INSERT INTO verhaal VALUES(‘$motto’);”; • gebruik addslashes() om speciale tekens veilig te maken voor queries echo addslashes($motto); // geeft nu: It\’s the way I like to slam\’n\’dunk