Université Paul Cézanne Licence M@ntic Année 2011/2012 Initiation Base de données, PHP & CMS Lionel Paris [email protected] PHP Connexion au serveur PHP Comme vous le savez, pour pouvoir utiliser des scripts PHP, il faut passer par un serveur (architecture 3 tiers). Le serveur en question sera le même que celui hébergeant le serveur de bases de données, situé à l’adresse : 192.168.2.248 Pour pouvoir exécuter vos scripts, il faut donc que les fichiers (dont l’extension est .php) se trouvent sur le serveur, et non sur votre propre ordinateur. Pour cela, un compte a été créé pour chacun d’entre vous, avec les même identifiants que pour vous connecter au serveur de bases de données (manticX). Sur le serveur, chaque compte contient un répertoire nommé public_html, quele serveur PHP peut visiter pour exécuter les scripts php qui s’y trouvent. Pour visualiser le résultat de ces scripts, il faut ensuite utiliser un navigateur et aller consulter la page qui correspond sur le serveur avec une adresse de la forme : http://www.192.168.2.248/manticX/maPage.php (où le X représente le numéro qui vous a été attribué). Ainsi, vous pourrez voir le résultat de vos scripts en changeant simplement la dernière partie de l’adresse contenant le nom de votre script (maPage.php). Pour que vos scripts PHP se retrouvent sur le serveur, dans le répertoire public_html de votre compte, il y a 2 solutions : 1. Soit vous écrivez vos scripts localement sur votre ordinateur, puis, une fois terminés, vous les copiez dans le répertorie en question pour pouvoir les exécuter/visualiser. L’inconvénient majeur de cette méthode est qu’il faut copier le script à chaque changement/modification, ce qui est fastidieux. 2. L’autre solution consiste à travailler directement sur le serveur, à éditer les fichiers de manière distante, pour qu’il n’y ai pas d’autre manipulation à faire pour pouvoir visualiser le résultat. C’est cette approche que nous avons retenu. Mais elle nécessite d’établir une connexion avec le serveur, afin de pouvoir travailler sur les fichiers présents sur le serveur. Cette connexion sera établie avec le logiciel winSCP. Le logiciel winSCP Récupérer le logiciel Sur le serveur ftp, accessible depuis les favoris de l’exportateur de fichier, allez sur Favoris/Serveur FTP Etudiant/Licences/MANTIC/LParis et copiez/collez le répertoire PHP en entier dans vos documents. Ce répertoire contient 2 sous répertoire : le logiciel winSCP, ainsi que l’éditeur notepad++, qui sera utilisé pour éditer les scripts php. Lancer le logiciel winSCP Une fois copié dans vos documents, allez dans le répertoire scp et lancez le logiciel (double clic sur ). L’écran de connexion suivant apparaît : Remplissez les champs comme indiqué, avec votre propre identifiant de connexion. Avant de continuer (cliquer sur Login), il conseillé de sauvegarder la configuration pour ne pas avoir à remplir tous les champs à chaque connexion, pour cela cliquez sur Save… Une fois sauvegardé, vous pouvez vous connecter. Acceptez le certificat. Une fois connecté, la fenêtre suivante s’affiche : Le cadre de gauche présente les documents présents sur votre ordinateur local, le cadre de droit contient les documents présents sur votre compte sur le serveur distant (remarquez la présence du répertoire public_html). Il ne reste plus qu’à associer l’éditeur notepad++ sur les fichiers php et html et vous pourrez commencer les exercices. Associer l’éditeur notepad++ aux fichiers php et html Une fois winSCP lancé, allez dans le menu Options/Preferences. Une fenêtre s’ouvre. Dans le cadre de gauche, cliquez sur Editor, vous devez arriver à l’écran de la page suivante. En appuyant sur le bouton ADD, l’éditeur propose d’associer des types de fichiers à des éditeurs, créez 2 associations, une avec *.php, l’autre avec *.html. Dans les deux cas, choisissez External editor et en cliquant sur Browse, sélectionnez . Une fois l’association réalisée, vous pouvez commencer à travailler en faisait un clic droit -> Edit sur le fichier que vous voulez éditer. Exercice 1 : Premier script PHP Une fois connecté au serveur avec winSCP, déplacez-vous dans le répertoire public_html dans le cadre de droite (serveur distant), puis faîtes un clic-droit new->file et créez le fichier exo1.php. L’éditeur de texte notepad++ devrait s’ouvrir automatiquement. Tapez le programme suivant dans un fichier exo1.php, qui servira de prototype pour les scripts suivants (en-têtes, balises,...). Éditez le code source HTML produit et comparez le à ce qui est affiché par le navigateur. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <HTML> <HEAD> <TITLE>HTML vs. PHP</TITLE> </HEAD> <BODY> Ceci est une ligne de code HTML! <br> <?php echo "Celle-ci est une ligne de code PHP!!! <br>\n"; ?> </BODY> </HTML> Modifiez le code pour obtenir l’affichage suivant dans le navigateur. Exercice 2: Les variables et boucles (for, while...) Ecrire un script php qui : à l'aide d'une boucle for, affiche les entiers de 0 à 10 dans l'ordre croissant, puis affiche la valeur de la somme de ces entiers. à l'aide d'une boucle while, affiche les entiers de 15 à 0 dans l'ordre décroissant, puis affiche la valeur de 15!. Exercice 3 : Chaînes de caractères et transmission d'arguments On veut appeler le script traitement.php en lui passant 3 paramètres : 1. le nom d'un individu, 2. le prénom d'un individu, 3. et son genre : 1 pour homme et 0 pour femme. Quel est la forme de l'URL qu'il faut passer au navigateur ? Ecrire ensuite le script PHP traitement.php qui récupèrera les valeurs de ces paramètres et se contentera de les afficher, accompagnées de la formule de politesse de votre choix qui diffèrera en fonction du sexe de l'individu. Exercice 4 : Tableaux et tableaux associatifs Le moyen le plus efficace et le plus simple pour parcourir un tableau en PHP est d’utiliser une boucle foreach. L’avantage par rapport aux autres boucle, c’est que l’on a pas à se préoccuper de la taille du tableau que l’on veut parcourir. La syntaxe pour parcourir un tableau : 1. Simple, est la suivante : foreach ($tab as $case){…} Où : $tab est un tableau contenant des éléments de n’importe quel type Le mot clé as permet d’associer le contenu de chaque case à la variable $case pour chaque passage dans la boucle (valable dans le bloc entre accolades). 2. A plusieurs dimensions est la suivante : foreach ($tabAsso as $cle=>$val){…} Où : $tab est un tableau associatif contenant des éléments de n’importe quel type Le mot clé as permet d’associer le contenu de chaque lige aux variables $cle pour la clé et $val pour la valeur de la ligne pour chaque passage dans la boucle (valable dans le bloc entre accolades). Ex : si un tableau contient une ligne telle que : $tabAsso[uneClé] = uneValeur ; Alors dans la boucle foreach, on aura $cle qui vaudra uneClé et $val qui vaudra unValeur. Écrire un script PHP qui crée un tableau et y stocke les 15 premiers entiers dans l'ordre croissant. Parcourir ce tableau à l'aide d'une boucle foreach et afficher la somme de ces nombres. Créer un tableau associatif contenant quelques éléments du tableau périodique des éléments, dans lequel la clé correspond au nom de l'atome et la valeur contient le symbole de ce dernier. Pour mémoire, voici quelques éléments du tableau périodique des éléments : Afficher chaque élément du tableau de manière "élégante" en le parcourant à l'aide d'une boucle foreach. Exercice 5 Connexion à une base de données Créez un fichier ParametresConnexion.php contenant le script suivant (en mettant les identifiants qui vous correspondent). <?php define (’serveur’,"localhost"); define (’nom’,"manticX"); define (’passwd’,"*****"); define (’base’,"manticX"); ?> Écrivez ensuite le script connect.php qui se connecte à la base, puis exécute la requête : "SELECT * FROM Magasin;" et affiche le nom de chaque magasin. Pour ce faire : Pensez à vous inspirer des exemples vus en cours. Utilisez la fonction require pour insérer les identifiants de connexion. (rajoutez require(ParametresConnexion.php); au début de votre script) Utilisez la fonction mysql_fetch_object() pour récupérer chaque ligne de la table résultat. Essayez ensuite de changer les valeurs des paramètres pour voir les messages d'erreurs affichés. Exercice 6 Liste des magasins Créez un script qui affiche la liste des magasins, avec leurs adresses complètes, leurs numéros de téléphones et leurs horaires d'ouverture. Testez les différents formats de listes. Exercice 7 Créez un script qui affiche la liste des Tee-shirts disponibles dans au moins un magasin sous le format suivant : Référence, Taille, couleur Exercice 8 Même chose avec les intitulés des Tee-shirts et leur prix de base. Exemple : mc00, manches courtes coton, L, rouge, 7.5 Euros. Exercice 9 : Page d'accueil Écrivez un script qui affiche un lien vers une page contenant la liste de tous les Tee-shirts et un autre vers une page contenant la liste de tous les magasins. Exercice 10 : Liste des magasins Chaque magasin doit être un lien vers une page affichant la liste de tous les Tee-shirt qu’il a en stock.
© Copyright 2025 ExpyDoc