Hoofdstuk 16 en 19 PHP en MYSQL

Slides:



Advertisements
Verwante presentaties
Word 2003 Tips en trucs Door Johan Lammers.
Advertisements

Klik in de berichtenbalk op Bewerken inschakelen,
Httpd.conf Aanpassen van het Apache 2 configuratiebestand om mod_rewrite via.htaccess toe te staan.
Video Verwerking Movie Maker
Module 7 – Hoofdstuk 5 (1) SQL – een begin.
Inloggen in WinPOS In deze presentatie wordt kort gedemonstreerd hoe je moet inloggen in WinPOS. Door op de linker muisknop te klikken, ‘blader’ je door.
Databases via internet
Internetapplicaties - II Gegevensinvoer 1 Internetapplicaties Deel 2: Gegevensinvoer: HTML-forms, JavaScript en JSP.
PHP & MYSQL LES 03 PHP & DATABASES. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
Databank van een restaurant Download op Twee tabellen: Klanten: Alle klanten die minstens.
Deze presentatie mag noch geheel, noch gedeeltelijk worden gebruikt of gekopieerd zonder de schriftelijke toestemming van Seniornet Vlaanderen VZW Mijn.
Practica Computerlinguistiek Tekst en uitleg:
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
W ORD P RESS TECHNISCHE ACHTERGROND Kris Cardinaels 26 maart 2013.
Base: bewerkingen 2 soorten - Oplopend- Aflopend.
HTML Les 1: Introductie HTML
LauwersCollege Buitenpost Informatica
Informatica Hoofdstuk 11 LauwersCollege Buitenpost Informatica
Inhoud Kenmerken ODBC HTML & PHP Inlogfunctie. Inhoud Kenmerken ODBC HTML & PHP Inlogfunctie.
LauwersCollege Buitenpost Informatica
HTML elements en CSS Commando's Lenonardo Lyceum centrum voor deeltijds onderwijs Hoboken Schooljaar
Download en installeer de gereedschappen
Klik op de berichtenbalk op Bewerken inschakelen,
Introductie in: PHP. Groei in webapplicaties Groei in webapplicaties Het ontstaan van PHP Het ontstaan van PHP De client-serverarchitectuur De client-serverarchitectuur.
Workshop PHP Een productencatalogus. Case Uitgever van software wil webpagina met productgegevens publiceren op basis van catalogus. Het gaat momenteel.
Workshop PHP Een productencatalogus Met database.
Werken met een adressenbestand
Werken met een adressenbestand in Word 2010 wo
Challenge the future Delft University of Technology Augustus 2010 Korte handleiding Metis Plus Augustus 2010.
LauwersCollege Buitenpost Java Applet programma dat op een website zichtbaar is Java Application programma dat zelfstandig werkt Javascript Scripttaal.
HOE WERKT WORDPRESS? EEN ERG PERSOONLIJKE BENADERING.
Relationele Databases Hoofdstuk 10 Deel 2 Blz.: 90 t/m 95.
1 paragraaf 9 Bestanden met digitale informatie Informatica Blok 1 Hoofdstuk 1 Digitale informatie in bestanden.
WEBBUILDING 07/03/2005 Saartje De Geyter.
PHP Windows Microsoft ASP Internet Open Source PHP.
Deel XXI 1 Internetapplicaties Internetprogrammeren Capita Selecta.
Deel X: JSP + Java + database 1 Internetapplicaties Deel 10: JSP + Java + database: Client Server via http.
Client-side scripting. 1.Scripting in webpagina’s 1. Verschillende talen VB: toepassingen in Windowsomgeving VBA: toepassingen in MS-Office VBScript internet.
G!DS Basismodule Trainingsdag 2 Naam, functie Datum, plaats.
Starten met PHP Dynamischer bouwen. PHP is een een scripttaal waarmee de server pagina’s in elkaar kunt laten zetten. Het verschil met HTML: Een php pagina.
PHP & MYSQL LES 02 PHP & FORMULIEREN. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
PHP & MYSQL LES 01 PHP BASICS. PHP & MYSQL 01 PHP BASICS 02 PHP & FORMULIEREN 03 PHP & DATABASES 04 CMS: BEST PRACTICE.
Order IT v1.03 (01/03/2005) Order IT V Order IT v1.03 (01/03/2005) Opstarten De client applet wordt opgestart vanuit een html pagina in een browser.
Starten met PHP Dynamischer bouwen.
LauwersCollege Buitenpost Informatica
In vogelvlucht het wedstrijdformulier
Online filmpjes maken. (
Front-end development
Client side vs Server side Server side code Code wordt op de webserver uitgevoerd Bewerkt de html die naar de gebruiker gestuurd wordt voordat die verzonden.
Les 0 Structured Query Language SQL. Programma Les 0 – Introductieopdracht Les 1 Les 2 Les 3 Schriftelijke toets.
Docentinstructie: Het is aan te bevelen de eerste dia’s klassikaal te tonen en met uitleg te bespreken. Als na zes dia’s een korte demo van Celsius/Fahrenheit.
Opdracht 4 Video invoegen Gebruik deze presentatie om de opdracht te maken en zet hier je naam:.
Webpagina's maken met (X)HTML en CSS Lang leve het Kladblok!!! Verboden voor editors.
Invullen van de tevredenheidspeiling door ouders via het Ouderportaal.
Hoe maak ik een PowerPoint presentatie?
Les 3 - Operators Workshop Php Basic. ICT Academy Php Basic Content Operators Wiskundig Toewijzing Vergelijking.
Inloggen >> Gegevensaanlevering en controle in Peridos In Release 3.3 van Peridos is er een nieuwe module gebouwd voor het aanleveren en bekijken van gegevens.
Codetuts Academy Les 2 Module 2a Php Fundamentals 1.
Handleiding Mijn Amersfoortse. Inhoud 1.Inloggen Mijn Amersfoortse 2.Overzicht Mijn Amersfoortse 3.Inzien en wijzigen gegevens –Gegevens contracthouder.
Hoe een website realiseren ? Horen, zien en ontsluiten Gooik, 27 januari 2006 Johnny Van Bavegem Heemkundige Kring van Gooik.
wordPress  Het meest flexibele CMS CMS= Content Management System.
TranSearch Real Time Document & Asset Management Web Client
Digitaal wedstrijd formulier
LauwersCollege Buitenpost Informatica
ASP.NET MVC Web Development
Informatie-analyse 1: Er zijn veel manieren om een database te vullen
Small Basic Console deel 2
Python – For loop + strings
Transcript van de presentatie:

Hoofdstuk 16 en 19 PHP en MYSQL wamp, server-side/client side PHP, de basis if-opdracht, herhaling formulier-verwerking met bestanden werken MySQL LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica Wamp PHP Open source Brede ondersteuning Gebruik bijvoorbeeld WAMP MySQL (databases) Open source Beperkte functionaliteiten Extreem snel bij kleine tot middelgrote databases Windows Apache Mysql Apache (webserver) Open source Snel en stabiel PHP LauwersCollege Buitenpost Informatica

Client-side scripttaal client-sided wordt verwerkt door de browser client-sided is statisch client-sided heeft beperkingen vb: HTML, CSS, JavaScript, Applets LauwersCollege Buitenpost Informatica

Javascript: client-side scripttaal computer van de gebruiker computer van de provider html-documenten web server verzoek voor een pagina browser HTML pagina internet LauwersCollege Buitenpost Informatica

Server-side scripttaal server-sided wordt verwerkt op de web server server-sided is dynamisch server-sided kan praktisch alles regelen vb: PHP, PERL, ASP, Python LauwersCollege Buitenpost Informatica

PHP: server-side scripttaal computer van de gebruiker computer van de provider php-documenten web server machine scripting verzoek voor een pagina browser database HTML pagina internet LauwersCollege Buitenpost Informatica

Het eerste php-document <html> <head> <title>mijn 1e php-bestand </title></head> <body> <?php echo "mijn 1e PHP-document\n"; echo date(); ?> </body></html> <html> <head> <title>mijn 1e php-bestand </title></head> <body> mijn 1e PHP-document 26-08-2010 </body></html> eerste_php_bestand.php hier begint de php-code hier eindigt de php-code LauwersCollege Buitenpost Informatica

Het eerste php-document (2) een PHP bestand heeft de extensie .php PHP code start je met <?php PHP code eindigt met ?> met echo druk je iets af; kan ook met print (....); \n zorgt er voor dat er in de html-code op een nieuwe regel wordt overgegaan met echo date(); wordt de datum afgedrukt Elke opdracht-regel sluit je af met een ; // commentaar kan na een dubbele slash /* meer-regelig commentaar kan op deze manier, dus tussen slash+spatie */ LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica Variabelen Variabelen worden gebruikt om gegevens tijdelijk op te slaan. N.B: PHP is hoofdlettergevoelig! namen van variabelen beginnen met een $ namen mogen letters, cijfers of '_' bevatten variabelen hoef je niet te declareren in PHP Voorbeelden: <?php $naam = "van der Beek"; // een string $aantal = 60; // een integer $getal = 1.23; // een double $fout = false; // een boolean ?> LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica Ontsnappingstekens De \ (Backslash) wordt gebruikt als zogenaamd ontsnappingsteken. Dat moet je voor bepaalde tekens zetten om verwarring te voorkomen. Als je in een echo-opdracht bijvoorbeeld het dollarteken $ ergens wilt gebruiken, dan moet je \$ invoeren, anders wordt er gedacht dat het om een variabele gaat. Ook als je in een echo-opdracht aanhalingstekens " of ' wilt laten afdrukken, dan moet je ze escapen (d.w.z.: backslash ervoor) En als je de backslash wilt afdrukken, dan moet je er een extra backslash voor zetten. De \ wordt ook gebruikt voor speciale tekens, bijvoorbeeld \n is het teken voor een nieuwe regel, en \t voor een tab-teken. Voorbeelden: <?php echo 'Hij heet David \'O Connor'; echo 'Dit kostte \$5,-'; ?> LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica Operatoren operatoren voor optellen, aftrekken, vermenigvuldigen en delen zijn +, -, * en /, zoals je gewend bent string operatoren kun je met een . aan elkaar plakken Als $fruit = 'appel'; en $kleur = 'rode'; dan wordt er met echo $fruit . $kleur; afgedrukt: rode appel vergelijkings operatoren: if ($a == 3) .......  als $a gelijk is aan 3 dan ........ if ($a != 5) .......  als $a ongelijk is aan 5 dan ........ if ($a <= $b) .......  als $a kleiner of gelijk is aan $b dan .... Logische operatoren zijn and, &&(=en), or, ||(=of), !(=niet) if ($a == 1 && $b2 <= 5 ) ......... LauwersCollege Buitenpost Informatica

Voorwaardelijke opdracht <html><head><title>if-opdracht</title></head> <body> <?php $dagnummer = date("w"); if ($dagnummer == 2) { echo "Vandaag is het dinsdag!"; } else { echo "Vandaag is het geen dinsdag"; } ?> </body></html> De if-opdracht controleert de waarde van $dagnummer (date("w")  0=zondag, 1=maandag, … 6=zaterdag) Als het gelijk aan 2 is zal alles tussen de eerste { } worden afgedrukt. En als het niet gelijk aan 2 is zal alles tussen de tweede { } worden afgedrukt. LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica elseif wanneer er meer mogelijkheden dan twee zijn kan ook deze constructie gebruikt worden: $dagnummer = date("w"); if ($dagnummer == 2) { echo "Vandaag is het dinsdag!"; } elseif ($dagnummer == 3) { echo "Vandaag is het woensdag!"; } else { echo "Vandaag is het geen dinsdag en geen woensdag"; } LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica Herhaling m.b.v. for <html><body> <?php $woord = "Hallo"; for($x=0 ; $x<8 ; $x++) { print("$woord<br>");} ?> </body><html> <html><body> Hallo<br> Hallo<br> Hallo<br> Hallo<br> Hallo<br> Hallo<br> Hallo<br> Hallo<br> </body><html> LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica Herhaling m.b.v. while while (voorwaarde) { opdrachten; } of zó: do { opdrachten; } while (voorwaarde) LauwersCollege Buitenpost Informatica

Een tabel maken m.b.v. een for-lus <html><body> <?php print("<table border=1> \n"); for ($x=1 ; $x<5 ; $x++) { print("<tr> \n"); for($y=1 ; $y<4 ; $y++) print("<td>$x $y</td> \n"); } print("</tr> "); print("</table> \n"); ?> </body></html> <html><body> <table border=1> <tr> <td>1 1</td> <td>1 2</td> <td>1 3</td> </tr><tr> <td>2 1</td> <td>2 2</td> <td>2 3</td> <td>3 1</td> <td>3 2</td> <td>3 3</td> <td>4 1</td> <td>4 2</td> <td>4 3</td> </tr><tr> <td>5 1</td> <td>5 2</td> <td>5 3</td> </tr></table> </body></html> LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica Een formulier We maken eerst een html-document met een formulier (dat hoeft dus geen php-document te zijn) formulier.htm <html><body> <form action="verwerkformulier.php" method="post"> voornaam: <input type="text" name="voornaam"><br> achternaam: <input type="text" name="achternaam"><br> <input type="submit" value="verzenden"> </form> </body></html> LauwersCollege Buitenpost Informatica

Nu naar het verwerkings-script LauwersCollege Buitenpost Informatica Als het formulier is ingevuld, en er wordt op de knop met "verzenden" geklikt dan wordt er een verzoek naar de server gestuurd om het script "verwerkformulier.php" te verwerken en te versturen (vanwege action="verwerkformulier.php" in de form-tag) Bovendien wordt de invoer in het formulier meegestuurd, en als in de form-tag method="post" was toegevoegd dan komen de invoergegevens beschikbaar in de variabelen $_POST['naam van het invoervenster'] LauwersCollege Buitenpost Informatica

Verwerking van het formulier LauwersCollege Buitenpost Informatica als de naam van het tekstvenster voornaam is komt de invoer beschikbaar als $_POST['voornaam'] Er moet een php-document zijn, dat het formulier kan verwerken. <html><body> Je hebt de volgende dingen ingevuld:<br><br> <?php $vn = $_POST['voornaam']; $an = $_POST['achternaam']; echo "Voornaam: $vn<br>\n";       echo "Achternaam: $an<br>\n"; ?> </body></html> als de naam van het tekstvenster achternaam is komt de invoer beschikbaar als $_POST['achternaam'] verwerkformulier.php LauwersCollege Buitenpost Informatica

De gegevens vastleggen in bestand Als je de ingevoerde gegevens uit het vorige formulier wilt vastleggen in een bestand, dan moet je een leeg bestand met bijv. de naam "nawgegevens.txt" uploaden naar de web-server, dan dan moet je de bestands-permissies van die file wijzigen in 777 (rwx voor iedereen) om er voor te zorgen dat iedereen dat bestand kan lezen en er voor kan zorgen dat er iets aan dat bestand wordt toegevoegd. Het bijbehorende php-script, dat er voor zorgt dat de gegevens worden vastgelegd in een bestand, zie je op de volgende dia LauwersCollege Buitenpost Informatica

Invoergegevens formulier vastleggen het bestand nawgegevens.txt wordt geopend, om er gegevens aan toe te kunnen voegen (a van append) Het php-document zijn, dat het formulier verwerkt, kan dan als volgt zijn: <html><body> Je hebt de volgende dingen ingevuld:<br><br> <?php $vn = $_POST['voornaam']; echo "$vn<br>"; $an = $_POST['achternaam']; echo "$an<br>";       $f = fopen("nawgegevens.txt","a");       if ($f)       {    fwrite($f,"$vn\n");             fwrite($f,"$an\n");             fclose($f); echo "de gegevens zijn vastgelegd<br>"; } ?> </body></html> de voornaam ($vn) wordt aan het bestand toegevoegd, en daarna de achternaam ($an) op een nieuwe regel (vanwege \n) verwerkformulier.php LauwersCollege Buitenpost Informatica

Inlezen en tonen van de gegevens het bestand nawgegevens.txt wordt geopend, om er gegevens uit te kunnen lezen (r van read) Inlezen en tonen van de gegevens Onderstaand php-document leest de gegevens in en toont ze. <html><body> <?php       $f = fopen("nawgegevens.txt","r");       if ($f)       {    $b=file($bnaam); for ($i=0;$i<count($b);$i++) { print("$b[$i]<br>"); }            fclose($f); ?> </body></html> de regels van het bestand worden ingelezen en in een array ($b) gezet) de i-de regel van het array, dus van het bestand, wordt afgedrukt verwerkformulier.php LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica SQL en MySQL Nu gaan we met behulp van een script gegevens uit een (MySQL) database halen. We gaan er vanuit dat er een database met de naam "bibliotheek" aanwezig is, en dat één van de tabellen de naam "leerlingen" heeft. Zo'n database kan m.b.v. phpMyAdmin op de server worden geïnstalleerd. We gaan er verder vanuit dat de naam van de host "localhost" is, dat de gebruikersnaam "leerling" is, en het wachtwoord "lc2010" Het php-script om met behulp van een sql-query gegevens uit de database te tonen zie je op de volgende dia LauwersCollege Buitenpost Informatica

Het php-script om een query uit te voeren <html><body> <?php $verbinding=mysql_connect("localhost","leerling","lc2010"); mysql_select_db("bibliotheek",$verbinding); $query = "SELECT * FROM leerlingen"; $result = mysql_query($query); $aantalrijen = mysql_num_rows($result); $aantalvelden = mysql_num_fields($result); print("<table border = 1> \n"); for ($x=0 ; $x<$aantalrijen ; $x++) { print("<tr> \n"); $rij = mysql_fetch_array($result); for ($y=0 ; $y<$aantalvelden ; $y++) { print("<td> $rij[$y] </td> \n"); } print("</tr> \n"); } print("</table> \n"); ?> </body></html> Er wordt een verbinding gemaakt met het database-programma Er wordt een database met de naam: "bibliotheek" geselecteerd LauwersCollege Buitenpost Informatica

Het php-script om een query uit te voeren (2) <html><body> <?php $verbinding=mysql_connect("localhost","leerling","lc2010"); mysql_select_db("bibliotheek",$verbinding); $query = "SELECT * FROM leerlingen"; $result = mysql_query($query); $aantalrijen = mysql_num_rows($result); $aantalvelden = mysql_num_fields($result); print("<table border = 1> \n"); for ($x=0 ; $x<$aantalrijen ; $x++) { print("<tr> \n"); $rij = mysql_fetch_array($result); for ($y=0 ; $y<$aantalvelden ; $y++) { print("<td> $rij[$y] </td> \n"); } print("</tr> \n"); } print("</table> \n"); ?> </body></html> De query wordt uitgevoerd en het resultaat wordt opgeslagen in de variabele $result Het aantal rijen en het aantal velden van het resultaat wordt vastgelegd in de variabelen $aantalrijen en $aantalvelden LauwersCollege Buitenpost Informatica

Het php-script om een query uit te voeren (3) <html><body> <?php $verbinding=mysql_connect("localhost","leerling","lc2010"); mysql_select_db("bibliotheek",$verbinding); $query = "SELECT * FROM leerlingen"; $result = mysql_query($query); $aantalrijen = mysql_num_rows($result); $aantalvelden = mysql_num_fields($result); print("<table border = 1> \n"); for ($x=0 ; $x<$aantalrijen ; $x++) { print("<tr> \n"); $rij = mysql_fetch_array($result); for ($y=0 ; $y<$aantalvelden ; $y++) { print("<td> $rij[$y] </td> \n"); } print("</tr> \n"); } print("</table> \n"); ?> </body></html> De records worden opgevraagd en weergegeven in een HTML-tabel LauwersCollege Buitenpost Informatica

LauwersCollege Buitenpost Informatica Toevoegen met SQL We kunnen niet alleen gegevens opvragen uit een database, we kunnen ook gegevens wijzigen, verwijderen en toevoegen. We gaan er weer vanuit dat er een database met de naam "bibliotheek" aanwezig is, en dat er een tabel "leerlingen" is. We gaan er verder vanuit dat de naam van de host "localhost" is, dat de gebruikersnaam "leerling" is, en het wachtwoord "lc2010" We moeten eerst een formulier hebben waarin de toe te voegen gegevens ingevoerd kunnen worden. En dan moet er een php-script zijn, die de gegevens uit dat formulier verwerkt. LauwersCollege Buitenpost Informatica

Een formulier om gegevens toe te voegen <html> <body> <form action="voegtoe.php" method="post"> <input type="text" name="voornaam" value=""> < input type="text" name =”achternaam" value =""> <input type=submit value="Verzend"> </form> </body> </html> LauwersCollege Buitenpost Informatica

Het php-script om gegevens toe te voegen Einde Er wordt een query gemaakt die de nieuwe gegevens invoert <html> <body> <?php $verbinding=mysql_connect("localhost","leerling","lc2010"); mysql_select_db("bibliotheek",$verbinding); $query = "INSERT INTO leden(voornaam,achternaam) VALUES('$voornaam','$achternaam')"; $result = mysql_query($query); ?> De gegevens zijn toegevoegd aan de database. </body> </html> De query wordt uitgevoerd. voegtoe.php Einde LauwersCollege Buitenpost Informatica