Les langages HTML et CSS sont des langages de simple affichage statique Grâce au PHP, laffichage...

Preview:

Citation preview

Les langages HTML et CSS sont des langages de simple affichage statique

Grâce au PHP, l’affichage change en fonction des circonstances que vous avez programmées. C’est un affichage dynamique.

Le langage PHPPersonal Home Pages qui est devenu l'abréviation récursive de « PHP: Hypertext Preprocessor »

( préprocesseur hypertexte PHP).

Fonctionnement d’un site statique

Il est possible d’insérer un programme en « javascript », interprété par le navigateur, dans le fichier html.

Comment utiliser le PHP ?

1. Site web sur un serveur hébergé

Remarque : Pour créer un site web, vous pouvez ouvrir un compte (gratuit) chez un hébergeur qui gère PHP.

1) L’utilisateur envoi une requête pour un fichier .php vers le serveur Web.

2) Celui-ci transfère le fichier demandé à l'interpréteur, chargé de décoder les lignes PHP qui s'y trouvent.

3) L'interpréteur transfère ensuite à son tour le fichier obtenu (un fichier HTML) vers le serveur, qui se charge de le renvoyer au poste client.

4) Le navigateur du poste client affiche la page html

2. Site web sur son ordinateur avec WAMP (Windows Apache MySQL Php)

Notepad++ reste notre éditeur de texte avec sa coloration synthaxique

Wamp server 2 : un environnement qui vous permettra de programmer PHP en local, pour vérifier son bon fonctionnement avant implantation sur serveur.http://www.wampserver.com/

Il existe d’autres serveurs locaux comme EasyPHP ou XAMP sous LINUX.

Exemple : L’instruction echo

Elle permet d’afficher du texte ou des données.Elle peut contenir des balises html : <p><p/>,<br/>…. les apostrophes qui sont seulement du texte sont neutralisées en plaçant \ devant chacune d'elle pourqu'elles ne soient pas considérées comme la fin de la chaîne de caractères. Taper ce programme et enregistrez-le dans page1.php et lancer-le.

Syntaxe : echo’ texte à écrire’;

<?phpecho'<p>Bonjour à tous.</p><br/>Mon vrai nom n\'est pas Toto.<br/>Mon vrai nom est Alain<br/> ';?>

Pour pouvoir lire un fichier PHP, il faut uninterpréteur PHP installé en local « WAMP »

Ouvrez votre serveur wamp. Une fois démarré, cliquez sur son icône dans la barre d'état à droite, une sorte de W vert,

Cliquez maintenant sur cette icône, puis sur localhost. Dans la fenêtre qui s'ouvre, rubrique vos projets, ouvrez le dossier PHP... Cliquez sur votre fichier page1.php

Cliquez affichage/source sur votre navigateur : Vous pouvez constater qu'il n'y a plus trace de PHP

Exercice 1 :

Ecrire un programme php qui affichera le texte suivant dans un explorateur.

BonjourVoici mon premier programme php.Même si le langage php n’est pas indispensable ici, cela me permet de débuter.

Les commentaires

Deux sortes de syntaxe pour des commentaires en PHP• Petit commentaire sur une seule ligne // en début de ligne• Commentaire sur plusieurs lignes /* au début et */ en dernier...

<?phpecho'<p>Bonjour à tous.</p> ';// ceci est un commentaire/*ceci est un autre commentairesur plusieurs lignes.*/?>

Affichage de la date et de l’heureCompléter le programme ci-dessous qui affiche le texte « voici la date et l’heure : »la fonction date("r") qui renvoie la date et l’heure.

<body><?php echo date("r"); ?></body>

Le point-virgule à la fin de la ligne de code est toujours présent mais les apostrophes ont disparus.

Visualiser le code source dans le navigateur afin d’observer ce qu’envoie le serveur au client .

Prolongeons l'exemple en écrivant d'un seul coup une chaîne et une fonction, séparées par "." (le point permet la concaténation des instructions), comme ceci :

<html><head>

<title>My first PHP document</title></head><body>

<?phpecho ‘<p>Voici la date et l’heure : ‘ . date("r") . ‘</p>’;?>

</body></html>

Pour débuter en php : http://www.phpdebutant.org/Pour un niveau avancé : http://www.php.net/manual/fr/index.php

Les fonctions d'heure et de datela fonction date, les autres paramètres les plus utiles :

date("y") Retourne l'année courante d'une date ; pour aujourd'hui, elle retourne : 12date("m") Retourne le mois courant d'une date ; pour aujourd'hui, elle retourne : 10date("F") Retourne le nom du mois courant d'une date ; pour aujourd'hui, elle retourne : Octoberdate("d") Retourne le jour courant du mois d'une date ; pour aujourd'hui, elle retourne : 5date("l") Retourne le nom du jour de la semaine d'une date ; pour aujourd'hui, elle retourne : Fridaydate("w") Retourne le jour de la semaine courant d'une date ; pour aujourd'hui, elle retourne : 4date("H") Retourne l'heure courante d'un temps ; au temps courant, elle retourne : 08date("i") Retourne les minutes courantes d'un temps ; au temps courant, elle retourne : 52date("s") Retourne les secondes courantes d'un temps ; au temps courant, elle retourne : 42

Exemple d’utilisation :

Nous allons changer l’image de fond chaque jour de la semaine.

<html><head>

<title>time and date</title></head>

<body background=“image<?php echo date("w"); ?>.jpg"></body>

</html>

Il suffit de placer 7 images nommées : image1, … , image7Dans le même répertoire que le document PHP.

Les constantes :

Exemple : Que valent les constantes « true » ou « false » ?Ecrire un petit programme permettant d’afficher la valeur de ces constantes.

Définition d’une constante :Syntaxe : define("NomConstante", "valeur");

Les constantes sont des valeurs prédéfinies qui ne peuvent pas être modifiées. Elles ne possèdent pas de $ contrairement aux variables.

Exemple :Ecrire un petit programme qui déclare deux constantes ( un nombre et une chaine de caractères ) et qui les affiche.

Les variables :

$ devant une chaîne de caractères signifie que nous parlons d'une variable, on la nomme comme on veut ensuite,mais jamais d'accent ni d'espace dans un nom de variable.

Les types des variables• string (chaîne de caractères)• integer (nombre entier)• bool (booléen qui signifie logique binaire genre vrai ou faux)• float (nombre réel) ou double

Les variables sont élémentaires dans tous les langages de programmation, elles permettent de stocker des données et d’effectuer des opérations.

<?php$nom='Mickaël';$age=17;$gars=true;$taille=1.75;echo $nom;echo $age;echo $gars;echo $taille;

?>

• Toutes les instructions se terminent par un point virgule.• Seule la variable string exige les guillemets (simples ou doubles)• La booléenne prend la valeur true ou false, mais sans guillemets.• Le nombre réel prend un point à l'anglo-saxonne et non une virgule...

La fonction gettype() renvoie le type de la variable.Syntaxe de la fonction : gettype(variable);A l’aide la fonction echo, afficher les différents types de variables pour les variables qui suivent ainsi que leurs valeurs :

$x = 120;$y = 134.87;$z = "texte";$v=(3==3);$u=(3==4);$w=2.54E-6;

Remarques : En php, le type de la variable est affecté automatiquement !La concaténation s’applique aussi aux variables ( .$x. )

Les opérateurs arithmétiquesLes opérateurs sont : •L’addition : +•La soustractions : -•La multiplication : *•La division : /•Le modulo : % qui renvoie le reste d’une division.Le signe = permet d’affecter la valeur une fois le calcul terminé.Exemple : Effectuer un programme qui effectue les opérations suivantes et les affichent.

$valeur=5;$nombre=(4+6)-2;$nombre=(4*6)/2;$nombre=22%5;

Pour effectuer les tests, il est nécessaire d’utiliser des comparateurs.Exemple :….if ($gars==true)

{ echo 'un garçon’ ; }else { echo 'une fille’ ; }?>

Les opérateurs de comparaison :== Égal à< Inférieur à> Supérieur à<= Inférieur ou égal à>= Supérieur ou égal à!= Non égal à

Les comparateurs

Dons les tests, il est possible de combiner des comparateurs.Exemple :<?phpif (($gars==true) && ($age>18))

{ echo 'un garçon majeur’ ; }else { echo ‘un garçon mineur ou une fille’ ; }?>

Il existe également des opérateurs logiques :

&& : ET

|| : OU

! : NON

Exercice 2 :

Ecrire un programme php dans lequel, on initialise un entier puis nous affiche :

•La parité de ce nombre.

•Si ce nombre est inférieur à 100.

•Son complément à 100 si le nombre est inférieur à 100.

Les formulaires

Rappel sur la balise « form » en html :

Pour remplir une variable, nous pouvons le faire avec des opérations ou nous pouvons les faire remplir par l’utilisateur.

<form action="saisie.php" method="post"><!-- Contenu du formulaire --></form>

Les attributs dans la balise form précisent le nom du formulaire, puis précisent que les variables contenues dansce formulaire seront envoyées par la méthode POST (au moment où l'utilisateur cliquera sur le bouton "submit") àla page saisie.php

<input type="text" name="nom_champ" value="valeur par defaut">

La balise « input » en html :

L'attribut « type » prend la valeur "text" ou "password".Le nom « name » est très important car il nous permettra de récupérer la donnée.D'autres attributs sont disponibles, comme « value » qui permet d'attribuer une valeur par défaut au champ,  « size » qui permet de préciser la taille du champ en nombre de caractères, maxlength qui sert à limiter le nombre de caractères possibles, readonly qui prend pour seule valeur "readonly" et verrouille le champ

Validation de la requête avec un bouton en html :

L’attribut « value » contient le texte affiché sur le bouton.

<input type="submit" name="envoyer" value="Valider">

<button type="submit" name="soumettre">Soumettre</br>les réponses</button>

Il existe également une balise double en html qui permet de concevoir des boutons d’acquisition.

Ici, ce formulaire présente une zone de saisie pour entrer son nom, va à la ligne, une zone de saisie pour entrersa ville, va à la ligne, et enfin un bouton pour valider sur lequel sera écrit 'OK'...

<form name="inscription" method="post" action="saisie.php">Entrez votre nom : <input type="text" name="nom"/> <br/>Entrez votre ville : <input type="text" name="ville"/><br/><input type="submit" name="valider" value="OK"/></form>

Les attributs dans la balise form précisent le nom du formulaire, puis précisent que les variables contenues dansce formulaire seront envoyées par la méthode POST (au moment où l'utilisateur cliquera sur le bouton "submit") àla page saisie.php

<html><head><title>Ma page d'accueil</title></head>

<body><h1>Bienvenue sur le site de toto </h1><h2>Commencez-donc par vous inscrire :</h2>

<form name="inscription" method="post" action="saisie.php">Entrez votre nom : <input type="text" name="nom"/> <br/>Entrez votre ville : <input type="text" name="ville"/><br/><input type="submit" name="valider" value="OK"/></form></body></html>

Taper ce programme et vérifier son fonctionnement.

Les variables sont automatiquement crées dans le fichier « saisie.php » selon la formule immuable $_POST['name'] pour chaque input.

Les variables $_POST[‘nom'] , $_POST[‘ville'] et $_POST['valider'] sont crées automatiquement et peuvent être utilisées par la suite dans le programme.

La variable $_POST['valider'] contient la valeur placée dans « value » ou rien ce qui nous permet de tester si les valeurs ont été envoyées ou pas avec la fonction isset()

$_POST[ ] est en fait un tableau associatif.

Pour afficher les variables du tableau « $_POST » crées dans le fichier « saisie.php » il est possible d’afficher les élément 1 à 1 avec une boucle mais il est également possible d’afficher le tableau avec la fonction « print_r() » valable pour tous les tableaux.

Pour préserver la mise en forme, nous pouvons utiliser la balise double « pre ».

Syntaxe de l’affichage du tableau « POST » à taper dans le fichier saisie.php :

<?phpecho "<pre>";print_r($_POST);echo "</pre>";?>

Exercice 3 :

Ecrire un programme qui demande le nom, le prénom, l’âge et la ville puis qui affiche un récapitulatif sous la forme d’une phrase.

La fonction print_r() permet de vérifier si dans un premier temps les variables de type POST ont bien été transmises au fichier.

Remarque : Nous pouvons également transmettre les données au fichier qui contient le formulaire en testant le bouton d’acquisition avec un test.

Les boucles et les testsCes outils sont communs à quasiment tous les langages de programmation, seule la syntaxe peut être légèrement modifiée.

Nous sommes obligé d’utiliser des variables ( incontournable également dans tous les langages de programmation ).Rappel : en php une variable x est notée $x ( valeur de x ).

Les boucles "while" Les boucles "for"If …if … else …if … elseIf … else …switch … case

Rappel sur les comparateurs <?php //RAPPEL IMPORTANT : penser au double égalif ($nombre==4) //son contraireif($nombre!=4) //Différent deif($nombre<4) //inférieur, supérieurif($nombre>4)if($nombre<=4) //inférieur ou égal, supérieur ou égalif($nombre>=4)//si l'âge est compris entre 15 et 25 ans :if (($age>=15)&& ($age<=25))//Notez && pour le 'et' logique (AND marche aussi)//Notez les parenthèses imbriquées pour chaque sous-condition//si $truc est 'papa' ou 'maman'if(($truc=='papa')||($truc=='maman')){ echo'Chouette, mes parents !'; }?>

La condition If …if (condition) { Instruction } La syntaxe est encore une fois très proche de celle du français ordinaire : Si (if) une condition est remplie, alors exécuter quelque chose.

<html><head>

<title>Loops </title></head><body>

<?php $x = 2; if ($x > 1) { echo ‘<p>la variable ‘.$x.’ est plus grande que 1 </p>’; } ?></body></html>

Exercice 4 : Ecrire un programme qui permet d’acquérir le nom et l’âge d’une personne puis qui nous affiche si la personne est un enfant, un adolescent ( entre 14 et 18 ans ) ou un adulte.

<html><head><title>Structure d’un test</title></head>

<body><h1>Programme html qui permet d’aquérir les données </h1><form name="inscription" method="post" action="rep.php">Entrez votre nom : <input type="text" name="nom"/> <br/>Entrez votre age : <input type="text" name="age"/><br/><input type="submit" name="valider" value="OK"/></form></body></html>

Il est possible de traiter les données dans le même fichier que le fichier d’acquisition

I l faut alors tester l’état du bouton ou des données du tableau $_POST[ ] avec la fonction isset().

Exemple : Pour tester l’état du bouton « submit »

isset($_POST['valider']) sera égale à 1 si $_POST['valider'] n’est pas vide sinon la fonction isset() sera égale à 0.

Reprendre le programme précédent en inscrivant toute les lignes de code dans un même programme.

La condition If elseif else

if (condition1) { Instruction } eseif (condition2) { Instruction }

else { Instruction }

La syntaxe est encore une fois très proche de celle du français ordinaire : Si (if) une condition est remplie, alors exécuter quelque chose sinon exécuter autre chose ect…

Exercice 5 : Reprendre le programme précédent directement en php et modifier la structure en utilisant elseif.

Entrez votre prénom :Entrez votre nombre de note de math :Entrez la moyenne de classe en math :Entrez une note de math :Entrez une autre note de math :Entrez une autre note de math :OK

Exercice 6 : Ecrire un programme afin qu’il affiche.

Lorsque l’on clique sur OK, cette phrase apparaît :Bonjour « prénom » votre moyenne est de « moyenne »Vous êtes en dessous ou au dessus de la moyenne de classe.

Remarque : Pour afficher une variable seule, il n’est pas nécessaire de mettre des apostrophes : echo $cal;

Les tableaux simples

on appelle « index ou indice » la position de la variable dans le tableau et « valeur » la valeur de la variable entreposée

Un tableau est un moyen de stocker plusieurs variables

<?php$semaine=array('lundi','mardi','mercredi','jeudi','vendredi','samedi','dimanche');Echo $semaine[2];?>Le tableau est lui-même une variable puisqu'il commence par $, mais une variable complexe, organisée

L'index commence à 0, donc dimanche aura pour index 6 et non 7.

$semaine[2] sera...mercredi et ainsi de suite... selon la règle : $semaine[index]

Une fois ce tableau construit, comment appeler une valeur ?

<?phpecho $semaine[2];?>

Exercice 7 : Ranger dans un tableau les 6 dernières notes de mathématiques. Calculer la moyenne de ces notes et afficher la valeur de cette moyenne.

Exemple : tableau afin de stocker une adresse.

Il est possible de d’utiliser des chaines de caractères comme indice pour les tableaux. Ce sont des tableaux associatifs.

<?php//On signale que notre variable $adresse4 sera un tableau$adresse4 = array();//on le remplit$adresse4 ['nom']='DUPONT';$adresse4 ['prenom']='Mickaël';$adresse4 ['num'] = 12;$adresse4 ['rue'] = 'rue des églantines';$adresse4 ['cp'] = 93000;$adresse4 ['ville'] = 'SAINT-DENIS';?>

'num' est ici un index du tableau adresse. 12 est la valeur stockée à l'index 'num'.

Bien entendu, l'intérêt d'un tableau d'adresses, c'est d'en stocker plus d'une !Alors nous procèderons... à un tableau de tableaux, un tableau imbriqué en fait...Nous venons de voir que $adresse4 est un tableau.

<?php//construction de mon tableau $agenda$agenda=array($adresse0, $adresse1, $adresse2, $adresse3 ,$adresse4);?>.

<?php//Pour convoquer 12echo $adresse4['num'];?>

<?php//récupérer l'adresse totale de Mickaël$adresseMick= $agenda[4];/* En effet, l'adresse de Mickaël se trouve dans notre agenda à l'index 4 (l'index numérique construit automatiquement)...*///Récupérer enfin le nom de famille de Mickaëlecho $adresseMick['nom'];?>

On aurait pu retrouver le nom de Mickaël dans ce tableau de tableaux par la syntaxe suivante, plus condensée :

Il faut ensuite procèder en deux étapes :

<?phpecho $agenda[4]['nom'];?>

La boucle "for"

L'instruction sera répétée tant que les membres "initialisation" + "pas" satisferont au membre "condition".

for (initialisation; condition; pas) { Instruction }

<html><head>

<title>Loops</title></head><body>

<?php for ($i=0; $i<=50; $i=$i+5) {echo ‘<p>variable $i is now = ' . $i . '</p>'; } ?>

</body></html>

La boucle "while"

Tant que la condition est vraie, on exécute l’instruction

while (condition) { Instruction }

<html><head>

<title>Loops</title></head><body>

<?php $x = 1; while ($x <= 50) { echo ‘ Ce texte est répété 50 fois<br/>’; $x = $x + 1; } ?>

</body></html>

L’incrémentation de x peut également se noter $x++

Autre exemple : La balise h est fixée par une variable.

<html><head>

<title>Loops</title></head><body><?php for ($x=1; $x<=6; $x=$x+1) { echo "<h" . $x . "> la balise h</h" . $x . ">"; } ?></body></html>

Exercice 7 : Faire l’acquisition de 10 notes, toutes comprises entre 0 et 20 et faire la moyenne de ces nombres pour ensuite afficher la moyenne.

Les boucles dans des bouclesDans l'exemple suivant nous imbriquons trois boucles for

<html><head>

<title>Loops</title></head><body><?php for ($intRed=0; $intRed<=255; $intRed=$intRed+30){ for ($intGreen=0; $intGreen<=255; $intGreen=$intGreen+30) { for ($intBlue=0; $intBlue<=255; $intBlue=$intBlue+30)

{ $StrColor = "rgb(" . $intRed . "," . $intGreen . "," . $intBlue . ")"; echo "<span style='color:" . $StrColor . "'>" . $ StrColor . "</span>";

} } }?> </body></html>

La commande switchLorsqu’il y a beaucoup de cas possible dans un choix, le switch est préférable à la structure if else.

switch(valeur_testee){case choix1 :{ Action1; }break; //Permet de sortir du switch

case choix2 :{ Action2; }break; //Permet de sortir du switch}

Si valeur_testee est égale à choix1 alors on réalise l’action1

Exemple : couleur est une variable qui contient du texte.

<?phpswitch($couleur){case ‘blond':echo ‘vous avez des cheveux blonds <br/>’;break;case ‘brun':echo ‘vous avez des cheveux bruns <br/>’; break;case ‘chatain':echo ‘vous avez des cheveux chatains <br/>’;break;case ‘roux':echo ‘vous avez des cheveux roux <br/>’;break; ?>

Exercice 8 : Reprendre l’exemple précédent en utilisant la structure if else.

La boucle foreach

La boucle foreach (pour chaque élément) présente l'avantage de parcourir la totalité d'un tableau, même si l'on n'a aucune idée du nombre d'éléments qu'il contient.

<?php//construction du tableau semaine$semaine=array('lundi','mardi','mercredi', 'jeudi', 'vendredi', 'samedi', 'dimanche');//parcours du tableauforeach($semaine as $jour) {

echo'- '.$jour.'<br/>';}

/* Pour chaque valeur du tableau $semaine, compose la variable $jour et affiche le jour puis va à la ligne... */?>

Lorsqu’il y a 2 tableaux imbriqués, il est nécessaire d’avoir 2 boucles FOR imbriquées pour lire tous les éléments

Ouvrir le programme « tableauImbrique.php » et examiner le programme.

La boucle foreach avec un formulairePHP construit automatiquement un tableau associatif dès que l'on soumet un formulaire.

Ce tableau se nomme $_POST, chaque élément a pour index le 'name' d'un élément du formulaire, et chaquevaleur, la valeur entrée par l'utilisateur dans chaque champ avant de cliquer sur le bouton 'submit'.

<?php/*pour chaque élément du tableau $_POST, récupère et affecte la valeur de l'index, puis récupère et affecte la valeur associée à cet index*/foreach($_POST as $index=>$valeur){echo '- '.$valeur.'<br/>';}?>

<html><head> <title>Votre IMC</title> </head><body><h2>Entrez les données suivantes </h2><form name="formulaire" method="post" action="tableau.php">Entrez votre prénom : <input type="text" name="prenom"/> <br/>Entrez votre taille (sous la forme 1.70) : <input type="text" name="taille"/> <br/>Entrez votre poids (en kilos) : <input type="text" name="poids"/> <br/><input type="submit" name="valider" value="OK"/></form><?php

echo'Vos données entrées : '.'<br/>';if(isset($_POST['valider'])){

foreach($_POST as $index=>$valeur){echo '- '.$index.' : '.$valeur.'<br/>';}

} ?> </body> </html>

Les fonctions

Une fonction permet d’exécuter une action répétitive.

Une fonction effectue des actions, elle peut renvoyer une valeur et être paramétrée par une ou plusieurs variables ou valeurs.

Une fonction peut se située dans la page qui fait appel à cette fonction ou dans un fichier extérieur à la page.

Les fonctions permettent de structurer un programme et existent dans la plupart des langages de programmation.

Les fonctions dans la page

Dans la création de la fonction, il est obligatoire de commencer par écrire function, ensuite vient le nom (libre).Enfin ici, notre fonction comporte un paramètre (une variable imaginaire, $nombre, dont on ne connaît pas encorela valeur)...

Exemple : Votre programme affiche les notes d'un élève.Vous souhaitez mettre en rouge toutes les notes (strictement) inférieures à 10.Vous souhaitez mettre en vert toutes les notes supérieures (ou égales) à 15.

function colore($nombre){toutes les instructions se situeront à l'intérieur de ces accolades; et se termineront par un ;}

<?phpfunction colore($nombre){

if($nombre<10){echo'<font color="red">'.$nombre.'</font>';}elseif($nombre>=15){echo'<font color="green">'.$nombre.'</font>';}

//cas par défaut(noir)else{echo $nombre;}

}?> Pour appeler cette fonction :

<?phpcolore($Nb);?>

<?phpfunction Moyenne($note1, $note2, $note3){$Moy=($note1+$note2+$note3)/3;echo 'Votre moyenne annuelle : '.$Moy;}?>

28 11 2013Il est possible d’avoir plusieurs valeurs dans une fonctions.

Pour utiliser cette fonction :<?phpMoyenne(12,9,13);?>

Exercice 9 : Ecrire un programme qui affiche le plus petit nombre contenu dans un tableau $tab de $nb nombres. Une fonction Min($tab,$nb) que vous créerez , permettra de trouver puis d’afficher le plus petit nombre du tableau.Remarque : Pour obtenir la taille du tableau, nous pouvons utiliser la fonction sizeof($arrayname) qui retourne un entier.

Les fonctions dans un fichier à part

Exemple : les fonctions utilisées se situent dans le fichier « fonction.php » qui se trouve dans le même répertoire que le fichier en cours. En début de programme, on doit avoir :

<?phpinclude('fonctions.php');?>

Une ou plusieurs fonctions peuvent être contenues dans un autre fichier. Il faut alors placer au début de la page dans laquelle on utilise cette fonction, un « include »

Exercice 10 : modifier le programme précédent de recherche du minimum d’un tableau de façon à utiliser la fonction Minimum que l’on placera dans un fichier à part.

Fonction qui renvoie une valeur de retour

« return » retourne une valeur ( ici contenue dans la variable « resultat ».Remarque : « return » stoppe la fonction.

Structure :<?phpFunction nom($NB) { Action ; return $résultat; }?>

Exercice 11 : Reprendre le programme précédent en affichant la valeur du minimum qui est renvoyée par la fonction.

Exercice 12 : Reprendre le programme précédent en affichant la valeur du minimum et du maximum qui seront renvoyés par une nouvelle fonction.

Les cookies

<?php$temps=3600;setcookie("nom","jean",time()+$temps);?>Ici le cookie « nom » contient la chaine de caractère « jean » et existera pendant 3600s.

Les cookies sont des variables qui existent du côté clients pendant un certains temps.Elles se déclare en début de programme :

Créer un autre programme php dans le même répertoire et faites-lui afficher le contenu du cookie « nom » avec echo "Le contenu du cookie log est ".$_COOKIE['nom'];Un lien dans le programme principal nous permettra d’accéder au programme d’affichage.

Pour effacer un cookie, il suffit de le vider avec la fonction setcookie() puis de la faire disparaitre avec la fonction unset()

<?php

if(isset($_COOKIE['nom']))

{

setcookie("nom");

unset($_COOKIE['nom']);

}

?>

Ajouter un lien vers un troisième programme qui effacera le cookie et vérifier que celui-ci est bien effacé.

Les variables de session

Pour utiliser les variables de session, il est nécessaire de placer ces lignes de code en début de programme.

<?phpsession_start();?>

Ce sont des variables stockées sur le serveur.

L’initialisation d’une variable session s’effectue à l’intérieur du programme.Exemple : $_SESSION['nom']="jean"

session_start();if($_POST['code']=='1234‘ && $_POST[‘nom’]==‘jean’)

{$_SESSION['code']='1234';$_SESSION[‘nom’]=‘jean’;header("Location:pagePrivee.php");}

else{$erreur="Votre code est incorrect";}

Il est possible de rediriger l’utilisateur vers une page privée en testant un code et en conservant l’identité de l’utilisateur avec une variable de session

Exercice 13 : Proposer un programme qui demande l’identifiant et le mot de passe à l’utilisateur. Si ceux-ci sont corrects, l’utilisateur est redirigé vers une page privée qui affichera son nom.

Exercice 14 : Ecrire un programme qui demande un nombre entier compris entre 0 et 200 puis vous indique si ce nombre est supérieur ou inférieur à un nombre aléatoire. Une fonction Reponse retourne la valeur 1 si le nombre à été trouvé, 2 si la valeur est inférieure et 3 si elle est supérieure. Le programme donne un nouvel essai tant que la valeur n’a pas été trouvée.

Remarques : •Pour générer un nombre aléatoirement, vous pouvez utiliser la fonction rand($min,$max).•Pour détruire les variables de session, à la fin de votre programme, vous ajouterez session_destroy()

Les fonction graphiques

La bibliothèque que nous avons choisie d’utiliser est jpgraph

Il existe des bibliothèques composées de fonctions graphiques qui permettent de tracer plus facilement différents graphes : bargraphes, diagrammes circulaires, graphe 2D ou 3D…

Ce sont des fichiers php qui possède souvent .inc à la fin de leur nom. Il ne faut pas oublier de les inclure en début de programme.

Pour utilisés les fonctions de cette bibliothèques nous allons comprendre quelques exemples.