Création d'Applications sur Internet





Chapitre5a: Langage PHP

Fatemeh BORRAN

Sommaire

Pages statiques

Pages dynamiques

Pages statiques vs. dynamiques

Pages dynamiques avec PHP

Visualisation de pages dynamiques

Page PHP

Serveur Web

Serveur Web - EasyPHP

  1. Installer EasyPHP sur sa machine;
  2. Placer les fichiers du site dans le répertoire www;
  3. Démarrer EasyPHP;
  4. Accéder à son site avec l'adresse suivante: Correct
  5. http://127.0.0.1/maPage.php
  6. Important: si vous tentez d'accéder à la page par le système de fichiers, le code PHP ne sera pas interprété: Faux
  7. C:/wamp/www/maPage.php

Ecrire du code PHP (1/2)

Ecrire du code PHP (2/2)

Le code PHP n'apparaît pas dans la page HTML reçue par le client. Seul le résultat de son interprétation apparaîtra.

<?php
   /* (une série d'instructions PHP ici ...)
   (par exemple : récupération des données d'un formulaire) */
?>
<!DOCTYPE html>
<html>
  <head>
    <title><?php (CODE PHP ICI) ?></title>
  </head>
  <body>
    <h1> Bonjour <?php (CODE PHP ICI) ?> ! </h1>
    <p> Voici une photo : </p>
    <img src="<?php (CODE PHP ICI) ?>"/>
  </body>
</html>

Séquence d'instructions

Variables

Types de variables: simples

Types de variables: simples (exemple1)

<?php
   $titre = "Page Personnelle de Bernie";
   $nom   = "Bernie";
   $photo = "Bernie_Portrait.jpg";
?>
<!DOCTYPE html>
<html>
  <head>
    <title><?php echo($titre); ?></title>
  </head>
  <body>
    <h1> Bonjour <?php echo($nom); ?> ! </h1>
    <p> Voici une photo : </p>
    <img src="<?php echo($photo); ?>" border="0"/>
  </body>
</html>
TryItNow

Types de variables: simples (exemple2)

<?php
   $titre = "Page Personnelle de Bernie";
   $nom       = "Noël";
   $prenom    = "Bernie";
   $photo     = "Bernie_Portrait.jpg";
   $naissance = 1982;
?>
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title><?php echo($titre); ?></title>
  </head>
  <body>
    <h1> Bonjour <?php echo($nom); ?> ! </h1>
    <p> Ton prénom est <?php echo($prenom); ?> </p>
    <p> Ta date de naissance est <?php echo($naissance); ?>. </p>
    <p> Tu as <?php echo(2015 - $naissance); ?> ans! </p>
  </body>
</html>
TryItNow

Types de variables: tableaux

Les tableaux numérotés

Le code PHP suivant:

<?php 
   // La fonction array permet de créer un array 
   $prenoms = array('François', 'Michel', 'Nicole');
?> 

est équivalant à:

<?php 
   $prenoms[0] = 'François'; 
   $prenoms[1] = 'Michel'; 
   $prenoms[2] = 'Nicole';
?> 

on peut afficher un élément du tableau en utilisant:

<?php 
   echo $prenoms[1];
?> 

Les tableaux numérotés (exemple)

<?php
   $titre = "Array";
   $prenoms = array ('François', 'Michel', 'Nicole');
?>
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title><?php echo($titre); ?></title>
  </head>
  <body>
    <p> $prenoms[0] = <?php echo $prenoms[0] ?> </p>
    <p> $prenoms[1] = <?php echo $prenoms[1] ?> </p>
    <p> $prenoms[2] = <?php echo $prenoms[2] ?> </p>    
  </body>
</html>
TryItNow

Les tableaux associatifs

Le code PHP suivant:

<?php 
   $coordonnees = array (
      'prenom' => 'François',
      'nom' => 'Dupont',
      'adresse' => '3 Rue du Paradis', 
      'ville' => 'Marseille'); 
?> 

est équivalant à:

<?php
   $coordonnees['prenom'] = 'François'; 
   $coordonnees['nom'] = 'Dupont'; 
   $coordonnees['adresse'] = '3 Rue du Paradis'; 	
   $coordonnees['ville'] = 'Marseille';
?>

on peut afficher un élément du tableau en utilisant:

<?php 
   echo $coordonnees['ville'];
?>

Les tableaux associatifs (exemple)

<?php
   $titre = "Array";
   $coordonnees = array (
      'prenom' => 'François', 
      'nom' => 'Dupont', 
      'adresse' => '3 Rue du Paradis', 
      'ville' => 'Marseille');
?>
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title><?php echo($titre); ?></title>
  </head>
  <body> 
    <p> $coordonnees['prenom'] = <?php echo $coordonnees['prenom']; ?> </p>
    <p> $coordonnees['nom'] = <?php echo $coordonnees['nom']; ?> </p>
    <p> $coordonnees['adresse'] = <?php echo $coordonnees['adresse']; ?> </p> 
    <p> $coordonnees['ville'] = <?php echo $coordonnees['ville']; ?> </p>              
  </body>
</html>
TryItNow

Opérations arithmétiques

Opérations de base: addition (+); soustraction (-); multiplication (*); division (/); modulo (%)

<?php
   $nombre = 5 + 2; // La variable nombre prend la valeur 7
   $nombre = 5 - 2; // La variable nombre prend la valeur 3
   $nombre = 5 * 2; // La variable nombre prend la valeur 10
   $nombre = 5 / 2; // La variable nombre prend la valeur 2
   $nombre = 5 % 2; // La variable nombre prend la valeur 1
   
   // Allez on rajoute un peu de difficulté
   $nombre = 5 + 2 * 3;     // La variable nombre prend la valeur 11
   $nombre = (5 + 2) * 3;   // La variable nombre prend la valeur 21
   $nombre = $nombre – 9.6; // La variable nombre prend la valeur 11.4
?>

Opérations arithmétiques (exemple)

<?php
   $nombre = 5 + 2; // La variable nombre prend la valeur 7
   $nombre = 5 - 2; // La variable nombre prend la valeur 3
   $nombre = 5 * 2; // La variable nombre prend la valeur 10
   $nombre = 5 / 2; // La variable nombre prend la valeur 2
   $nombre = 5 % 2; // La variable nombre prend la valeur 1
   
   // Allez on rajoute un peu de difficulté
   $nombre1 = 5 + 2 * 3;      // La variable nombre prend la valeur 11
   $nombre2 = (5 + 2) * 3;    // La variable nombre prend la valeur 21
   $nombre3 = $nombre2 - 9.6; // La variable nombre prend la valeur 11.4
?>
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Opérations arithmétiques</title>
  </head>
  <body>    
    <p> $nombre1 = <?php echo $nombre1; ?> </p>
    <p> $nombre2 = <?php echo $nombre2; ?> </p>
    <p> $nombre3 = <?php echo $nombre3; ?> </p>             
  </body>
</html>
TryItNow

Opérations logiques

Opérations de base: AND (et); OR (ou); ! (inversion).

<?php
   $op1 = true;  // op1 est vrai
   $op2 = false; // op2 est faux
   // Opération et
   $op3 = ($op1 AND $op1); // op3 est vrai
   $op4 = ($op1 AND $op2); // op4 est faux
   $op5 = ($op2 AND $op2); // op5 est faux
   // Opération ou
   $op6 = ($op1 OR $op1); // op6 est vrai
   $op7 = ($op1 OR $op2); // op7 est vrai
   $op8 = ($op2 OR $op2); // op8 est faux
   // Opréation inversion
   $op9 = ! $op1; // op9 est faux
?>

Opérations logiques (exemple)

<?php
   $op1 = true;  // op1 est vrai
   $op2 = false; // op2 est faux
   // Opération et
   $op3 = ($op1 AND $op1); // op3 est vrai
   $op4 = ($op1 AND $op2); // op4 est faux
   $op5 = ($op2 AND $op2); // op5 est faux
   // Opération ou
   $op6 = ($op1 OR $op1); // op6 est vrai
   $op7 = ($op1 OR $op2); // op7 est vrai
   $op8 = ($op2 OR $op2); // op8 est faux
   // Opréation inversion
   $op9 = ! $op1; // op9 est faux
?>
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Opérations logiques</title>
  </head>
  <body>    
    <p> $op1 = <?php echo $op1; ?> </p>
    <p> $op2 = <?php echo $op2; ?> </p>
    <p> $op3 = <?php echo $op3; ?> </p>
    <p> $op4 = <?php echo $op4; ?> </p>
    <p> $op5 = <?php echo $op5; ?> </p>
    <p> $op6 = <?php echo $op6; ?> </p>                           
    <p> $op7 = <?php echo $op7; ?> </p>    
    <p> $op8 = <?php echo $op8; ?> </p>    
    <p> $op9 = <?php echo $op9; ?> </p>    
  </body>
</html>
TryItNow

Opérations comparaisons

Opérations de base: == (égalité); != (inégalité); <; >; <=; >=

<?php
   $nombre1 = 2; 
   $nombre2 = 5;
   
   $cond1 = ($nombre1 == $nombre2); // cond1 est faux
   $cond2 = ($nombre1 != $nombre2); // cond2 est vrai
   $cond3 = ($nombre1 < $nombre2);  // cond3 est vrai
   $cond4 = ($nombre1 > $nombre2);  // cond4 est faux
   $cond5 = ($nombre1 <= $nombre1); // cond5 est vrai
   $cond6 = ($nombre2 >= $nombre2); // cond6 est vrai
?>

Opérations comparaisons (exemple)

<?php
   $nombre1 = 2; 
   $nombre2 = 5;
   $cond1 = ($nombre1 == $nombre2); // cond1 est faux
   $cond2 = ($nombre1 != $nombre2); // cond2 est vrai
   $cond3 = ($nombre1 < $nombre2);  // cond3 est vrai
   $cond4 = ($nombre1 > $nombre2);  // cond4 est faux
   $cond5 = ($nombre1 <= $nombre1); // cond5 est vrai
   $cond6 = ($nombre2 >= $nombre2); // cond6 est vrai
?>
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Opérations logiques</title>
  </head>
  <body>    
    <p> $cond1 = <?php echo $cond1; ?> </p>
    <p> $cond2 = <?php echo $cond2; ?> </p>
    <p> $cond3 = <?php echo $cond3; ?> </p>
    <p> $cond4 = <?php echo $cond4; ?> </p>
    <p> $cond5 = <?php echo $cond5; ?> </p>
    <p> $cond6 = <?php echo $cond6; ?> </p>   
  </body>
</html>
TryItNow

Concaténation

Concaténation (exemple)

<?php 
   $bonjour = "Hello";
   $monde = " world!";
   $salutation = $bonjour . $monde; 
   // $salutation prend la valeur "Hello world!"
   $age = 17;
   $texte = "Le visiteur a " . $age . " ans";
   // $texte = "Le visiteur a 17 ans";
?>
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Concatenation</title>
  </head>
  <body>    
    <p> $salutation = <?php echo $salutation; ?> </p>
    <p> $texte = <?php echo $texte; ?> </p>  
  </body>
</html>
TryItNow

La fonction echo

Exemple d'utilisation de echo

<?php
   $titre = "Page Personnelle de Bernie";
   $nom   = "Bernie";
   $photo = "Bernie_Portrait.jpg";
?>
<!DOCTYPE html>
<html>
  <head>
    <title><?php echo $titre; ?></title>
  </head>
  <body>
    <h1> Bonjour <?php echo $nom; ?> ! </h1>
    <p> Voici une photo : </p>
    <img src="<?php echo $photo; ?>"/>
  </body>
</html>
TryItNow

Résultat de l'exemple précédent

Sélection (1/2)

Sélection (2/2)

Exemple de sélection

<?php
   $prenom = "Bernie";
?>
<!DOCTYPE html>
<html>
  <head>
    <title>Page Bonjour</title>
  </head>
  <body>
    <?php 
      if ($prenom == "Bernie") {
         echo "<b>Bonjour Bernie !</b>";
      } else {
         echo "<b>Bonjour inconnu !</b>";
      }
    ?>
  </body>
</html>
TryItNow

Résultat de l'exemple précédent

Exemple de condition complexe

Boucles (1/2)

Boucles (2/2)

Boucle while

Exemple de boucle while

<?php 
   $nombre_de_lignes = 1; 
   while ($nombre_de_lignes <= 100) {
      echo 'Ceci est la ligne n°' . $nombre_de_lignes . '<br/>';
      $nombre_de_lignes++;
   } 
?> 
TryItNow

Boucle for

Exemple de boucle for

<?php 
   for ($nombre_de_lignes = 1; $nombre_de_lignes <= 100; $nombre_de_lignes++) {
      echo 'Ceci est la ligne n°' . $nombre_de_lignes . '<br/>'; 
   } 
?> 
TryItNow

Boucle while ou for?

La fonction isset

Références

Questions?!

Questions?!

Année 2015-2016 - Fatemeh Borran - /