l3 module libre
DESCRIPTION
L3 Module Libre. Année universitaire 2005-2006. Initiation à la Bioinformatique. Jean-Michel RICHER. Troisième Cours. Le Langage PHP Application au traitement des données. Plan. Rappel Le Langage PHP Utiliser PHP pour attaquer MySQL PHP et les pages Web. - PowerPoint PPT PresentationTRANSCRIPT
L3 Module Libre
Année universitaire 2005-2006
Initiation à la Bioinformatique
Jean-Michel RICHER
Troisième Cours
Le Langage PHP
Application au traitement desdonnées
Plan
1. Rappel
2. Le Langage PHP
3. Utiliser PHP pour attaquer MySQL
4. PHP et les pages Web
Rappels du cours précédent
Les SGBD (Systèmes de Gestion de Bases de Données) permettent d’organiser le stockage d’informations.
Le langage SQL (Structured Query Language) permet d’interroger les bases de données relationnelles :
SELECT cl_nom, cl_prenomFROM clients WHERE cl_ville = “Angers“;
Les données sont récupérées sous forme de tables
(n lignes * m colonnes)
Un certain nombre de traitements ne peuvent pas être réalisés en SQL (ex. afficher les commandes)
Pour pouvoir les réaliser il faut faire appel à un langage (autre que SQL) qui est capable d’interagir avec un SGBD
Parmi les langages susceptibles d’être utilisés on trouve : Perl Python PHP
Il s’agit de langages de script (interprétés)
Langages de script
Le Langage PHP
Les bases du langage
1994 Rasmus Lerdorf pour les besoins des pages web personnellessignifiait Personal Home Page
1997 réécrit par Zeev Suraski et Andi Gutmans pour donner PHP3PHP : Hypertext Preprocessor
Avantages de PHP Il s’intègre facilement aux pages web gratuit (Open Source) syntaxe empruntée au langage C et à Perl nombreuses bibliothèques de fonctionnalités (BD,
dessin, réseau)
Le langage PHP
Le langage PHP
PHP peut être utilisé de deux manières différentes :
soit comme un langage de programmation traditionnel (en ligne de commande) soit intégré dans une page web
<?php
echo “Bonjour“;
?>
Exemple de programme PHP
>php bonjour.phpBonjour
Fichier bonjour.php
Les variables
Les variables sont toutes préfixées par le symbole $
<?php
$annee = 1970;$nom = “Jean-Michel“;
echo “Bonjour, je m’appelle $nom\n“;echo “je suis né en $annee\n”;
?>
Les variables non sont pas typées en PHP
<?php$valeur = 1;$valeur = “Coucou“;?>
\n : retour à la ligne
Une variable peut prendre n’importequelle valeur (entier, réel, chaîne, tableau)
Les instructions de base
Le test conditionnel : if (condition) { … } else { … }
If ($valeur > 1) { echo “la valeur est supérieure à 1“;}
If ($valeur < 1) { echo “la valeur est inférieure à 1“;}
If ($valeur == 1) { echo “la valeur est égale à 1“;}
If ($valeur != 1) { echo “la valeur est différente de 1“;}
If ($valeur == 1) { echo “la valeur est égale à 1“;} else { echo “la valeur est différente de 1“;}
Les instructions de base
La boucle tant que : while (condition) { instructions }
$i = 1;$somme = 0;while ($i <= 10) {
$somme = $somme + $i;$i = $i + 1;
}
echo “Somme des entiers de 1 à 10 = $somme “;
Les instructions de base
La boucle pour : for (initialisation ; condition d’arrêt; incrémentation) { .. }
$somme = 0;for ($i = 1; $i <= 10; $i = $i + 1) {
$somme = $somme + $i;}
echo “Somme des entiers de 1 à 10 = $somme “;
Pour i partant de 1 et tant que i <= 10,ajouter 1 à i après chaque itération
Les tableaux
Il existe plusieurs manières de manipuler les tableaux
$tableau = array();$tableau[1] = 1;$tableau[2] = 2;$tableau[3] = 3;
print_r( $tableau );
$tableau = array(1, 2, 3);
foreach($tableau as $element) {echo “$element \n“;
}
$tableau = array();
array_push($tableau,1);array_push($tableau,2);array_push($tableau,3);
reset( $tableau ); while (list($cle,$val) = each($tableau)) { echo “tableau[ $cle ] = $val \n“;}
Le Langage PHP
Accès aux bases de données
Accéder à une Base de Données
1) Établir la connexion avec le serveur MySQL
function database_open() {$host = “richer.info-ua“;$user = “audrey“;$pass = “ce1mdpp“;$db = “test“;$acces = mysql_connect($host, $user, $pass);if (!$acces) die(“Erreur connexion serveur mysql“);mysql_select_db($db) or die(“Sélection bd impossible“);return $acces;
}
function database_close($link) {mysql_close($link);
}
Fichier database.php
Accéder à une Base de Données
2) Exécuter une requête MySQL
require(‘database.php’);
$link = database_open();$query = “SELECT cl_nom, cl_prenom FROM clients;“;
$result = mysql_query( $query ); if (!$result) {
echo “Erreur : “ . mysql_error();} else {
while ($record = mysql_fetch_row($result)) {echo “$record[1] $record[0] \n“;
}}database_close($link);
Exercices
1) Afficher le nom des clients qui ont réalisé une commande de plus de 100 € ainsi que le montant de la commande. Indiquez le montant total des commandes de plus de 100 €
PHP et pages Web
PHP fonctionne du côté serveur
Internet ouRéseau local
Internet ouRéseau local
PHP et pages Web
Pour utiliser PHP, on peut
On introduit du code php dans un fichier d’extension .html ou .php
<html><head> … </head><body>
<h2><?php$jour = date(“d/m/y"); echo “Bonjour, nous sommes le $jour"?></h2>
</body></html>
Index.html ou index.php
Exercices
1) Afficher le nom des clients qui ont réalisé une commande de plus de 100 € ainsi que le montant de la commande. Indiquez le montant total des commandes de plus de 100 €
Reprendre la requête précédente et créer une page html qui permet devisualiser les commandes :