Vous êtes sur la page 1sur 12

Exemple php-mysql: base de liens comments

Exemple php-mysql: base de comments


Code: act-linkNcomments

Originaux
url: http://tecfa.unige.ch/guides/tie/html/act- linkNcomment/act- link url: http://tecfa.unige.ch/guides/tie/pdf/files/act- linkNcomment.pdf

Auteurs et version
Olivier Clavel Version: 0.1 (modifi le 12/12/01)

Prrequis
Module technique prcdent: php-mysql

Autres modules
Module technique suppl.: act-php-mysql
Internet et Education

Exemple php-mysql: base de liens comments - .

Objectifs
Se familiariser avec linterface PHP-MyAdmin pour MySQL Faire une petite application web concrte en PHP-MySQL. Cette permet: Dajouter de modifier et de supprimer des messages comprena URL et un commentaire dans une base de donnes. De voir la liste de tous les messages dposs De chercher dans la liste (si on a le temps) Cette application de "liens comments" peut servir de base de rf implmenter quelque chose de plus volu. Par exemple en aml fonction suivantes: Upload de fichier Authentication des utilisateurs Protection des donnes (seul lutilisateur et ladministrateur peu supprimer un commentaire).

Internet et Education

Exemple php-mysql: base de liens comments - .

1. Petit rappels rapides et ressources


1.1 Utilisation de MySQL 1.2 Connection PHP-MySQL

2. Construction de lapplication
2.2 2.3 2.4 2.5 2.6

2.1 Mise en place de la base de donne

Formulaire pour ajouter les donnes Fichier pour enregistrer les donnes dans la table MySQL Fichier pour lister les donnes Fichier pour editer et supprimer Recherche

Internet et Education

Exemple php-mysql: base de liens comments - 1. Petits rappels rapides et ressources

1. Petits rappels rapides et ressources


1.1 Utilisation de MySQL Documentation:
En franais: http://tecfa/guides/mysql/fr-man/manuel_toc.ht En anglais: http://tecfa.unige.ch/guides/mysql/man/manuel_ La communication avec le serveur MySQL se fait par lintermdi (queries). Voici des exemples simples des principaux types de re allons utiliser dans cet exemple.

Crer une table


CREATE TABLE clavelLinks ( id int(11) NOT NULL auto_increment, nom varchar(30) DEFAULT NOT NULL, lien varchar(255), comment text, PRIMARY KEY (Id) );
Internet et Education

Exemple php-mysql: base de liens comments - 1. Petits rappels rapides et ressources

Ajouter des donnes dans une table


INSERT INTO clavelLinks VALUES (, zeitounat tecfalala.unige.ch, Cest vraiment un super site ressources) INSERT INTO clavelLinks (nom, comment) VALUES (smar ici vous tes tous Naze)

Supprimer des donnes


DELETE FROM clavelLinks WHERE nom=smartman

Modifier des donnes


UPDATE clavelLinks SET lien = http://tecfa.unige.ch

Lister des donnes


SELECT * FROM clavelLinks SELECT nom,lien FROM clavelLinks WHERE id=1 SELECT id FROM clavelLinks WHERE nom=zeitounator SELECT comment FROM clavelLinks WHERE lien LIKE %te ORDER BY name;
Internet et Education

Exemple php-mysql: base de liens comments - 1. Petits rappels rapides et ressources

1.2 Connection PHP-MySQL Documentation:


En franais: http://tecfa/guides/php/php3/manual/index.htm En anglais: http://tecfa/guides/php/doc_fr/manuel_toc.html PHP permet le dialogue avec le serveur MySQL et : laffichage des donnes la cration des donnes dans la table par lintermdiaires de form la suppression et la modification des donnes. Voici des exemples simples des diffrentes fonctions qui seront u exemple ainsi que de certaines structures de programme commu

Connection au serveur MySQL


mysql_pconnect("localhost","nobody", "") or die ("impossible de se connecter MySQL;

Selection dune base de donne


mysql_select_test("test");
Internet et Education

Exemple php-mysql: base de liens comments - 1. Petits rappels rapides et ressources

Envoie dun requte MySQL et rcupration de lide


$query_string = "INSERT INTO clavelLinks nom, lien, ($nom, $lien, $comment)"; $query = mysql_query($query_string); $query_string = "SELECT * FROM $search_word%)"; $query = mysql_query($query_string); clavelLinks WHE

Compter le nombres denregistrement dans le rsultat


$nombre_enrg = mysql_num_rows($query)

Rcuprer les donnes dans le rsultat


for ($i=0; $i<$nombre_enrg; $i++) { $nom = mysql_result($query, $i, "nom"); $lien = mysql_result($query, $i, "lien"); $comment = mysql_result($query, $i, "comment"); echo "<p>nom dutilisateur : $nom</p>"; echo "<p>lien: <a href=\"$lien\">$lien</a></p>"; echo "<p>commentaire:<p>" echo "<p>$comment</p>"; echo "<hr>"; }
Internet et Education

Exemple php-mysql: base de liens comments - 1. Petits rappels rapides et ressources

Controler le rsultat dune requte, rcuprer les mess


if ($query) { echo "<p>Vos donnes ont bien t enregistres. M } else { echo "<p>Il y a eu une erreur lors de len enregistrement</p>"; echo "<P>Voici lerreur donne par MySQL:" . mysql p>"; }

Internet et Education

Exemple php-mysql: base de liens comments - 2. Construction de lapplication

2. Construction de lapplication
Demonstration en ligne: url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments

2.1 Mise en place de la base de donne


Vous allez utiliser PHP-MyAdmin qui est une interface graphiqu url: http://tecfa.unige.ch/admin/phpMyAdmin-2.2.2
Serveur: localhost username: nobody password <il ny en a pas> Crez une table votre nom dans la base de donnes champs suivants:

id: identifiant unique numrique autoincrment nom: chaine de caractres (VARCHAR) lien: chaine de caractres (VARCHAR) comment: chaine de caractres (TEXT)

Vous pouvez vous inspirer de la requte qui a servi crer la tab url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments
Internet et Education

Exemple php-mysql: base de liens comments - 2. Construction de lapplication

2.2 Formulaire pour ajouter les donnes


Construisez un formulaire HTML pour recevoir les donnes (nom commentaire). Il devra poster ses donnes vers une page PHP (in Pour vous inspirer: url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments

2.3 Fichier pour enregistrer les donnes dans la table


Construisez un programme PHP qui recoit les donnes depuis le enregistre dans votre table MySQL Pour vous inspirer: url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments

Internet et Education

Exemple php-mysql: base de liens comments - 2. Construction de lapplication

2.4 Fichier pour lister les donnes


Construisez un programme PHP qui rcupre toutes les donnes MySQL et les affiche lcran. Prvoir un lien "supprimer" et "edi enrigistrement Pour vous inspirer: url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments

2.5 Fichier pour editer et supprimer


Construisez encore 2 programmes: Supprimer un enregistrement (quand on cliques sur le lien "supp liste) Modifier un enregistrement (quand on cliques sur le lien "diter" Pour vous inspirer: url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments

Internet et Education

Exemple php-mysql: base de liens comments - 2. Construction de lapplication

2.6 Recherche
Si vous avez le temps, construisez: Un formulaire permettant de saisir des mots rechercher dans les "commentaire. Une page qui affiche le rsultat (le mieux tant de rutiliser la pa rsultats dans leur ensemble) Pour vous inspirer: url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments url: http://tecfa.unige.ch/guides/tie/code/act-linkNcomments

Internet et Education