1 / 18

Client - Serveur

Client - Serveur. PHP & MySQL. http://www.php.net. Bezada Sylvain & Perey Alexandre ISTASE3. PHP & MySQL. PLAN Introduction PHP MySQL Applications. PHP. Présentation Historique Qu’est-ce que PHP? Avantages. Base du langage PHP Variables, Opérateurs, Structures

stacey
Download Presentation

Client - Serveur

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Client - Serveur PHP & MySQL http://www.php.net Bezada Sylvain & Perey Alexandre ISTASE3

  2. PHP & MySQL PLAN Introduction PHP MySQL Applications

  3. PHP • Présentation • Historique • Qu’est-ce que PHP? • Avantages • Base du langage PHP • Variables, Opérateurs, Structures • Tableaux et Chaînes • Réutilisation du code et écriture • PHP orienté objets • Stockage des données

  4. PHP Historique: 1994 : Version 1.0, Rasmus Lerdorf Objectif : Conserver une Trace des utilisateurs 1995: Libre téléchargement de PHP/FI Objectif : intégrer instructions de programmation dans du code HTML 1996: 10 millions de sites en PHP 1997: Sortie de PHP 3.0 par Zeev Suraski et Andi Gutmans Objectif : améliorer la puissance d ’analyse et la fiabilité Début 2001: PHP Version 4.0 utilisé dans plus de 5 millions de sites

  5. PHP • Qu’est-ce que PHP? Hypertext Preprocessor Création de site Web Dynamique Open source Inclut dans du code HTML Langage de script coté serveur

  6. PHP • Avantages • Performances • Intégration avec les Bases de données • Prix • Portabilité • Bibliothèques intégrées

  7. PHP • Exemple <html><head><title>PHP Test</title></head> <body> <?php echo "Hello World<P>"; ?> <br> Adresse: <?php echo $REMOTE_ADDR ;?> <br> </body> </html> <html><head><title>PHP Test</title></head> <body> Hello World <br> Adresse: 129.128.5.2 <br> </body> </html> Côté Serveur Côté Client

  8. PHP • Variables, opérateurs, structures • Variables : Types courants ( String, Int, Array, … ) • Opérateurs : Logique, Comparaison, Arithmétique, … $totalqty = 0; $totalamount = 0.00; $totalamount = ” Hello ” ; $totalamount = (double)$totaqty; $a = 3; $b = 5; $result=$a + $b; $a = ” Hello ”; $b = ”world ”; $result = $a.$b; $a = 5; $b = &$a; $a = 7; // $a et $b valent 7 ($note > 50 ? ”Admis ” : ”Recalé ”); • Structures de contrôle : If, Else, Switch, Case… If( $totalqty == 0 ) { echo ” vous n’avez pas rempli la page récédente !<br>”;} Else { echo ” La quantité totale est : ”.$totalqty;}

  9. PHP • Tableaux et Chaînes: • Tableaux Indexés Numériquement • Tableaux Associatifs $produit = array( “Maïs” , “Blé” , “Tournesol” ); $numbers = range(1,10); • Mise en forme de chaînes $prix = array( “Maïs”=>15, “Blé”=>20, “Tournesol”=>23 ); $prix[“Maïs”] = 15; $prix[“Blé”] = 20; $prix[“Tournesol”] = 23; • Localisation et remplacement de sous-chaînes au moyen de fonctions de traitement de chaînes $name=trim($name) <p> <? Echo nl2br($mailcontent); ?> </p> $feedback = AddSlashes($feedback); • Expressions régulières $address = “feedback@alex.com”; If(strstr($feedback, “argent”)) $address = “comptabilite@alex.com”; Else if (strstr($feedback, “renseignement”)) $address = “info@alex.com”; $feedback = str_replace(“monsieur”, “madame”, $feedback); $test = substr_replace($test, “X”, -1); .at  “cat”, “sat” [aeiou] recherche de voyelles [[:alnum:]]+ caractères alphanumériques

  10. PHP • Réutilisation du code et écriture de fonctions • Intérêt • Réduire des coûts • Augmenter la fiabilité • Améliorer leur cohérence • Instructions Require et Include • Écriture et appel d’une fonction et le fichier main.php: <? echo “Ceci est le fichier principal.<BR>“; require( “reutilisable.php” ); echo “le programme est terminé.<BR>”; ?> Soit le fichier reutilisable.php: <? echo “Ceci est un exemple très simple.<BR>“; ?> Le navigateur Web affichera: Ceci est le fichier principal Ceci est un exemple très simple Le programme est terminé Nom_fonction (“paramètre”); Function ma_fonction() { echo “Ma fonction a été invoquée.”; }

  11. PHP • PHP orienté objet • Classes et objets • Instanciation Le principal avantage d’un logiciel orienté objet réside dans sa capacité à supporter et à encourager l’encapsulation • Héritage et Redéfinition Class classname { function classname($param) { echo « Constructeur appelé avec le paramètre $param <br>; } } $a = new classname(« First »); Class A { var $attribute = « defaulte value »; function operation() { echo « la valeur de \$attribute est $this->attribute<br> »; } } Class B extends A { var $attribute = « different value »; function operation() { echo « la valeur de \$attribute est $this->attribute<br> »; } } Class classname { function operation1() { } function operation2() { } }

  12. PHP • Stockage des données • Dans un fichier • Dans une base de données • Avantages d’une base de donnée - Ouverture d’un Fichier avec fopen(chemin du fichier, mode du fichier) - Ecriture dans un fichier avec fwrite(pointeur sur fichier, chaine de caractères, longueur chaine) - Lecture d’une ligne à la fois avec fgets(), fgetss() et fgetcsv() - Lecture intégral avec readfile(), fpassthru() et file() - Fermeture avec fclose(pointeur sur fichier) - Accès plus rapide aux données - Extraction plus faciledes données -Traitement des accès concurrents - Accès aléatoire aux données - Systèmes de privilèges intégrés

  13. MySQL • Présentation • Qu’est-ce que MySQL? • Avantages • Fonctionnement de MySQL • Architecture • Accès à BDD MySQL à partir du Web avec PHP

  14. MySQL • Qu’est-ce que MySQL? • Système de gestion de base de données relationnelles • Robuste et rapide • Contrôle d’accès aux données • Serveur multiutilisateurs et multithreads • Fondé sur le SQL • Disponible en Open Source

  15. MySQL • Avantages • Système rapide • Simplicité d’emploi • Portabilité • Open source

  16. MySQL • Architecture Requète Http Navigateur Serveur Web 1 Envoi fichier Html Envoi du fichier Php Envoi fichier Html Envoi Résultat Brute Moteur PHP Serveur MySQL Requete SQL

  17. MySQL • Principales étapes pour intérroger une base de donnée à partir du Web • Vérifier et filtrer les données fournies par l’utilisateur • Etablir une connexion vers la BDD appropriée • Interroger la BDD • Récupérer les résultats • Présenter les résultats à l’utilisateur Trim($Searchterm) : Supprime les espaces Mysql_select_db(« nom bdd »); @$ db = mysql_pconnect(«nom hôte», « nom utilisateur », « password »); $resultat = mysql_query($query) $nb_résultats = mysql_num_rows($resultat) $tab = mysql_fetch_array($resultat) Echo htmlspecialchar(Stripslashes($tab[« champ n »]));

  18. PHP & MySQL • Applications • Réalisation de site commercial (authentification , caddie) • Service d’e-mail par le Web • Gestionnaire de mailing lists • Forum Web • Générer des documents personnailsés en pdf

More Related