Webtoegang tot gegevensbanken  Katrien Verbert [email_address]
Hypertext Markup Language (HTML) <ul><li>gebruikt voor webpagina’s </li></ul><ul><li>statische pagina’s </li></ul><ul><li>...
dynamische pagina’s <ul><li>gegevens kunnen verschillen telkens de pagina getoond wordt </li></ul><ul><li>verscheidene tec...
PHP: een inleiding  <ul><li>script-taal </li></ul><ul><ul><li>een programmeertaal geschikt voor het schrijven van kleine p...
variabelen <ul><li>namen </li></ul><ul><ul><li>beginnen met $ </li></ul></ul><ul><ul><li>mogen verder letters, cijfers en ...
PHP <ul><li>Begin- en eindtag: </li></ul><ul><ul><li><?php  ?> </li></ul></ul><ul><ul><li><?  ?> </li></ul></ul><ul><li>Co...
tabellen (arrays)  <ul><li>zijn dynamisch: geen vast aantal elementen </li></ul><ul><li>posities kunnen genummerd zijn (be...
voorbeelden <ul><li>$Fruitlijst = array (`appel`, `banaan`, `sinaasappel`); </li></ul><ul><ul><li>bevat 3 elementen, index...
tabellen (arrays)  <ul><li>Sequentieel doorlopen van tabellen kan met  foreach </li></ul><ul><li>Foreach ($Fruitlijst as $...
PHP <ul><li>rekenkundige operatoren: </li></ul><ul><ul><li>*  /  %  +  -  ++  -- </li></ul></ul><ul><li>vergelijkingsopera...
PHP <ul><li>Logische operatoren </li></ul><ul><ul><li>!  and  &&  or  || </li></ul></ul><ul><li>String operatoren </li></u...
bereik (scoop) van variabelen  <ul><li>variabelen zijn by default lokaal </li></ul><ul><li>voorbeeld </li></ul><ul><ul><li...
globale variabelen <ul><li>gebruik van variabelen die buiten de functie aangemaakt zijn </li></ul><ul><li>voorbeeld </li><...
superglobal variabelen <ul><li>variabelen die automatisch door PHP aangemaakt worden en altijd globaal zijn </li></ul><ul>...
 
formulieren <ul><li>geschikt voor communicatie met een gebruiker </li></ul><ul><li>gepreciseerd tussen tags  <form>  en  <...
formulieren <ul><li>bij versturen van dit formulier gaan de gegevens naar het formHandler.php script, dat er b.v. als volg...
gebruik van PHP <ul><li>wordt aan server-zijde gebruikt voor </li></ul><ul><ul><li>dynamische web-pagina’s </li></ul></ul>...
verbinding maken met een gegevensbank <ul><li>Gebruik  mysql_connect  en  mysql_select_db </li></ul><ul><ul><li>mysql_conn...
queries <ul><li>gebruik  mysql_query </li></ul><ul><ul><li>mysql_query ( <query> [, <connectie>] ) ; </li></ul></ul><ul><u...
rijen uit het resultaat halen <ul><li>gebruik  een herhaling  zoals while, foreach,… </li></ul><ul><li>voorbeeld </li></ul...
afsluiten van de connectie: <ul><li>Gebruik  mysql_close  </li></ul><ul><ul><li>mysql_close (<connectie>) ; </li></ul></ul...
 
 
 
 
 
 
Upcoming SlideShare
Loading in...5
×

PHP

3,097

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,097
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
145
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

PHP

  1. 1. Webtoegang tot gegevensbanken Katrien Verbert [email_address]
  2. 2. Hypertext Markup Language (HTML) <ul><li>gebruikt voor webpagina’s </li></ul><ul><li>statische pagina’s </li></ul><ul><li>tekst met tags tussen scherpe haakjes die het formaat specificeren om de tekst te tonen in bepaalde vorm </li></ul><html>  <head>   <title>Welkom</title>  </head>  <body>   <h1>Ga zitten</h1>   <p>Hartelijk <b>welkom</b> in de cursus.</p>  </body> </html>
  3. 3. dynamische pagina’s <ul><li>gegevens kunnen verschillen telkens de pagina getoond wordt </li></ul><ul><li>verscheidene technieken om dynamische HTML pagina’s te definiëren </li></ul><ul><ul><li>Een daarvan: PHP script taal </li></ul></ul><ul><li>gebruik: </li></ul><ul><ul><li>in een HTML document wordt een of meerdere plaatsen een stukje php code geplaatst. </li></ul></ul><ul><ul><li>wanneer de pagina wordt opgevraagd, wordt op de server de php code uitgevoerd; het resultaat wordt doorgestuurd naar de client </li></ul></ul><html> <body>   <?php   echo &quot;Welkom!”; ?> </body> </html>
  4. 4. PHP: een inleiding <ul><li>script-taal </li></ul><ul><ul><li>een programmeertaal geschikt voor het schrijven van kleine programma’s (=scritps) </li></ul></ul><ul><ul><li>om veel voorkomende taken te automatiseren. </li></ul></ul><ul><li>ontworpen in 1994 door Rasmus Lerdorf </li></ul><ul><li>naam: </li></ul><ul><ul><li>Oorspronkelijk: PHP = Personal Home Page </li></ul></ul><ul><ul><li>Nu: PHP = PHP: Hypertext Preprocessor </li></ul></ul><ul><li>PHP processor is geschreven in C, dus erg draagbaar </li></ul><ul><li>erg geschikt voor het manipuleren van dynamische web-pagina’s op een Web server </li></ul><ul><li>heeft verscheidene functiebibliotheken voor toegang tot verschillende types van relationele gegevensbanken </li></ul>
  5. 5. variabelen <ul><li>namen </li></ul><ul><ul><li>beginnen met $ </li></ul></ul><ul><ul><li>mogen verder letters, cijfers en het onderstrepingsteken bevatten (maar geen cijfers onmiddellijk na $-teken) </li></ul></ul><ul><li>type: variant – kan wijzigen in functie van de uitgevoerde bewerking </li></ul><ul><ul><li>moet dus niet vooraf gedeclareerd worden </li></ul></ul><ul><ul><li>een variable krijgt haar type bij de eerste toekenning (maar dat type kan later nog wijizgen!) </li></ul></ul><ul><li>soorten: </li></ul><ul><ul><li>Getallen – Strings (tussen ‘ ‘ of “ “) – Boolese waarden </li></ul></ul>
  6. 6. PHP <ul><li>Begin- en eindtag: </li></ul><ul><ul><li><?php ?> </li></ul></ul><ul><ul><li><? ?> </li></ul></ul><ul><li>Commentaar: </li></ul><ul><ul><li>// tot einde regel </li></ul></ul><ul><ul><li># tot einde regel </li></ul></ul><ul><ul><li>/* over verscheidene regels */ </li></ul></ul>
  7. 7. tabellen (arrays) <ul><li>zijn dynamisch: geen vast aantal elementen </li></ul><ul><li>posities kunnen genummerd zijn (beginnend bij 0) </li></ul><ul><li>posities kunnen ook door een string aangegeven worden; dan spreekt men van associatieve tabellen. </li></ul>
  8. 8. voorbeelden <ul><li>$Fruitlijst = array (`appel`, `banaan`, `sinaasappel`); </li></ul><ul><ul><li>bevat 3 elementen, index begint bij 0 </li></ul></ul><ul><li>$Fruitlijst = array (1=>`appel`, 2=> `banaan`, 3=>`sinaasappel`); </li></ul><ul><ul><li>bevat 3 elementen, index begint bij 1 </li></ul></ul><ul><li>$db = array (`host` => `localhost`, </li></ul><ul><li> `user` => `root`, </li></ul><ul><li> `password` => `geheim`, </li></ul><ul><li> `port` => `3306`, </li></ul><ul><li> `db_name` => `php_app`) ; </li></ul>
  9. 9. tabellen (arrays) <ul><li>Sequentieel doorlopen van tabellen kan met foreach </li></ul><ul><li>Foreach ($Fruitlijst as $fruit) </li></ul><ul><li>print (“$fruit <br />”); </li></ul>
  10. 10. PHP <ul><li>rekenkundige operatoren: </li></ul><ul><ul><li>* / % + - ++ -- </li></ul></ul><ul><li>vergelijkingsoperatoren: </li></ul><ul><ul><li>== === < > <= >= != <> !== </li></ul></ul><ul><li>echo() en print() </li></ul><ul><ul><li>weergeven van strings binnen PHP </li></ul></ul><ul><ul><li>met echo() kan de tekst meerdere regels omvatten, met print() niet </li></ul></ul><ul><ul><li>Voorbeelden </li></ul></ul><ul><ul><ul><li>echo `dit is tekst`; </li></ul></ul></ul><ul><ul><ul><li>echo (`dit is tekst`); </li></ul></ul></ul>
  11. 11. PHP <ul><li>Logische operatoren </li></ul><ul><ul><li>! and && or || </li></ul></ul><ul><li>String operatoren </li></ul><ul><ul><li>. .= </li></ul></ul><ul><li>Controlestructuren </li></ul><ul><ul><li>if – else </li></ul></ul><ul><ul><li>verkorte if-else </li></ul></ul><ul><ul><li>switch </li></ul></ul><ul><ul><li>for </li></ul></ul><ul><ul><li>while </li></ul></ul><ul><ul><li>do – while </li></ul></ul><ul><ul><li>foreach </li></ul></ul>
  12. 12. bereik (scoop) van variabelen <ul><li>variabelen zijn by default lokaal </li></ul><ul><li>voorbeeld </li></ul><ul><ul><li><?php </li></ul></ul><ul><ul><li>$som = 0; </li></ul></ul><ul><ul><li>function maakSom ($g1, $g2){ </li></ul></ul><ul><ul><li>$som = $g1 + $g2; </li></ul></ul><ul><ul><li>echo $som; </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>?> </li></ul></ul><ul><ul><li>... </li></ul></ul><ul><ul><li><?php echo $som ?> // geeft: 0 </li></ul></ul><ul><ul><li><?php maakSom(5,6) ?> // geeft: 11 </li></ul></ul><ul><ul><li><?php echo $som ?> // geeft: 0 </li></ul></ul>
  13. 13. globale variabelen <ul><li>gebruik van variabelen die buiten de functie aangemaakt zijn </li></ul><ul><li>voorbeeld </li></ul><ul><ul><li><?php </li></ul></ul><ul><ul><li>$som = 0; </li></ul></ul><ul><ul><li>function maakSom ($g1, $g2){ </li></ul></ul><ul><ul><li>$som = $g1 + $g2; </li></ul></ul><ul><ul><li>echo $som; </li></ul></ul><ul><ul><li>} </li></ul></ul><ul><ul><li>?> </li></ul></ul><ul><ul><li>... </li></ul></ul><ul><ul><li><?php echo $som ?> // geeft: 0 </li></ul></ul><ul><ul><li><?php maakSom(5,6) ?> // geeft: 11 </li></ul></ul><ul><ul><li><?php echo $som ?> // geeft: 11 </li></ul></ul>
  14. 14. superglobal variabelen <ul><li>variabelen die automatisch door PHP aangemaakt worden en altijd globaal zijn </li></ul><ul><li>een aantal arrays van superglobals zijn beschikbaar, o.a.: </li></ul><ul><ul><li>$GLOBALS : </li></ul></ul><ul><ul><ul><li>array van alle variabelen die je zelf als global definieert </li></ul></ul></ul><ul><ul><li>$_GET en $_POST : </li></ul></ul><ul><ul><ul><li>array van alle formuliervelden die via GET of POST verzonden worden </li></ul></ul></ul><ul><ul><li>$_SESSION : </li></ul></ul><ul><ul><ul><li>array met sessievariabelen </li></ul></ul></ul><ul><ul><li>$_SERVER : </li></ul></ul><ul><ul><ul><li>array met servergegevens (servernaam, protocol,…) </li></ul></ul></ul><ul><ul><li>$_ENV : </li></ul></ul><ul><ul><ul><li>array met omgevingsvariabelen (OS, computernaam,…) </li></ul></ul></ul><ul><ul><li>… </li></ul></ul>
  15. 16. formulieren <ul><li>geschikt voor communicatie met een gebruiker </li></ul><ul><li>gepreciseerd tussen tags <form> en </form> </li></ul><ul><li>belangrijke attributen van <form> tag: </li></ul><ul><ul><li>action : verwijzing naar de pagina die de verwerking van het formulier doet </li></ul></ul><ul><ul><li>method : manier waarop de gegevens verstuurd worden (keuze tussen GET en POST) </li></ul></ul><ul><ul><ul><li>GET: plakt alle gegevens achter de URL </li></ul></ul></ul><ul><ul><ul><li>POST de verzonden gegevens zijn niet zichtbaar in de URL, maar komen in de HTTP-headers </li></ul></ul></ul><ul><li>de velden van het formulier zijn beschikbaar in php-script d.m.v. de $_POST superglobal variabele </li></ul>
  16. 17. formulieren <ul><li>bij versturen van dit formulier gaan de gegevens naar het formHandler.php script, dat er b.v. als volgt kan uitzien: </li></ul><ul><ul><ul><li><html> <body>   <form action=&quot;formHandler.php&quot; method=&quot;post&quot;>     Voornaam: <input type=&quot;text&quot; name=&quot;voornaam&quot; />     Familienaam: <input type=&quot;text&quot; name=&quot;naam&quot; />     <input type=&quot;submit&quot; />   </form> </body> </html> </li></ul></ul></ul><html> <body>   Hallo <?php echo $_POST[&quot;voornaam&quot;].&quot; &quot;. $_POST[&quot;naam&quot;].&quot;!&quot;; ?> </body> </html>
  17. 18. gebruik van PHP <ul><li>wordt aan server-zijde gebruikt voor </li></ul><ul><ul><li>dynamische web-pagina’s </li></ul></ul><ul><ul><li>web-interfaces voor het zoeken in en het aanpassen van gegevensbanken </li></ul></ul>
  18. 19. verbinding maken met een gegevensbank <ul><li>Gebruik mysql_connect en mysql_select_db </li></ul><ul><ul><li>mysql_connect ([<server> [,<gebruikersnaam> [,<paswoord>]]]) ; </li></ul></ul><ul><ul><li>mysql_select_db ( <gegevensbank> [,<connectie>]) ; </li></ul></ul>$host = ‘barbary.cs.kuleuven.be’ ; $user = ‘phpdb’ ; $pass = ‘frietjes’ ; $database = ‘muziek’ ; $conn = mysql_connect ( $host, $user, $pass ) or die ( “cannot connect to database” ) ; mysql_select_db ( $database ) ;
  19. 20. queries <ul><li>gebruik mysql_query </li></ul><ul><ul><li>mysql_query ( <query> [, <connectie>] ) ; </li></ul></ul><ul><ul><li>dit geeft een tabel als resultaat </li></ul></ul><ul><li>voorbeeld </li></ul>$query = “SELECT user_id AS id, login_name AS naam, ” .”birthdate AS datum “ .”FROM user ” ; $result = mysql_query ($query) or or die (“database fout: “ . mysql_error() ) ;
  20. 21. rijen uit het resultaat halen <ul><li>gebruik een herhaling zoals while, foreach,… </li></ul><ul><li>voorbeeld </li></ul>while ( $entry = mysql_fetch_array($result, MYSQL_ASSOC) ) { <tr> <td><?php echo $entry[‘naam’]; ?> </td> <td><?php echo $entry[‘datum’]; ?> </td> </tr> }
  21. 22. afsluiten van de connectie: <ul><li>Gebruik mysql_close </li></ul><ul><ul><li>mysql_close (<connectie>) ; </li></ul></ul><ul><li>Voorbeeld </li></ul><ul><ul><li>$mysql_close ( $conn ) ; </li></ul></ul>
  22. 29. tutorials <ul><li>Online Php Manual http://www.php.net/manual/en/index.php </li></ul><ul><li>Online MySQL Manual http://dev.mysql.com/doc/ </li></ul>
  23. 30. VRAGEN?
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×