0% ont trouvé ce document utile (0 vote)
3 vues40 pages

PHP 1

Ce document traite des technologies web avancées, en se concentrant sur PHP et MySQL. Il couvre les concepts fondamentaux de PHP, y compris les variables, les opérateurs, les structures de contrôle, et l'intégration avec MySQL pour la gestion des bases de données. Des exemples de code illustrent comment établir des connexions, récupérer et afficher des données à partir de bases de données MySQL.

Transféré par

abanehkahalif123
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3 vues40 pages

PHP 1

Ce document traite des technologies web avancées, en se concentrant sur PHP et MySQL. Il couvre les concepts fondamentaux de PHP, y compris les variables, les opérateurs, les structures de contrôle, et l'intégration avec MySQL pour la gestion des bases de données. Des exemples de code illustrent comment établir des connexions, récupérer et afficher des données à partir de bases de données MySQL.

Transféré par

abanehkahalif123
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 40

Technologie Web Avancée

PHP/MYSQL

Le contenu de ce document est soumis à la Licence de Documentation Libre (GNU Free


Documentation License).

Dr. Kadar
1
Plan du Chapitre

1. PHP
2. MYSQL
3. PHP/MYSQL

Dr. Kadar 2
Technologie Web Avancée

PARTIE 1 : PHP

Le contenu de ce document est soumis à la Licence de Documentation Libre (GNU Free


Documentation License).

Dr. Kadar
3
Plan du Chapitre
 1. Introduction
 2. Variable
 3. Operateur
 4. Affichage
 5. Commentaire
 6. Structure de Contrôle
 7. Tableau
 8. Fonction
 9. Inclusion
 10. Redirection

Dr. Kadar 4
INTRODUCTION
PHP est un langage de programmation qui s'intègre dans vos pages HTML. Il
permet entre autres de rendre automatiques des tâches répétitives, notamment
grâce à la communication avec une base de données (utilisation la plus courante de
PHP).

Intégration d’un script dans une page :

❖ Les pages web sont au format HTML. Les pages web dynamiques générées
avec PHP sont au format PHP. Le code source PHP est directement insérer
dans le fichier html entre cette syntaxe :
<?php … ?>

1. Variables
▪Les identificateurs de variable sont précédés du symbole « $ ».

Exemple : $toto.
Dr. Kadar 5
2. TYPE D’ ENTIER
▪ Les variables peuvent être de type entier (integer), réel (double), chaîne de
caractères (string), tableau (array), objet (object), booléen (boolean).

2.1 Constant

L’utilisateur peut définir des constantes dont la valeur est fixée une fois pour toute.
Les constantes ne portent pas le symbole $ (dollars) en début d’identificateur et
ne sont pas modifiables.

define(‘’var’’,valeur) : définit la constante var (sans $) de valeur valeur

Exemple :
define(’’author’’,’’Djama’’);
echo author;
// affiche Djama

Dr. Kadar 6
3. OPERATEUR
Opérateurs arithmétiques :
+ (addition), - (soustraction), * (multiplié), / (divisé), % (modulo), ++ (incrément), --
(décrément). Ces deux derniers peuvent être pré ou post fixés

Opérateurs d’assignement :
= (affectation), *= ($x*=$y équivalent à $x=$x*$y), /=, +=, -=, %=

Opérateurs logiques :
and, && (et), or, || (ou), xor (ou exclusif), ! (non)

Opérateurs de comparaison :
== (égalité), < (inférieur strict), <= (inférieur large), >, >=, != (différence)
Opérateurs de concaténation :

4. Affichage
Les fonctions d’affichage :
echo() : écriture dans le navigateur ou print() : écriture dans le navigateur

Exemple :

<?php echo 'Bonjour le monde !' ; ?> ou < ?php print 'Bonjour le monde !' ; ?>
Dr. Kadar 7
5. Commentaire
Comme dans tout autre langage de programmation, PHP dispose sa propre
syntaxe de commentaires.
Les commentaires permettent de bien expliquer une partie du code afin qu’on
puisse déchiffrer en cas de maintenance ou de travail collaboratif (plusieurs
développeurs travaillant sur le même programme).

Il existe deux sortes de commentaire. Le commentaire sur une seule ligne et le


commentaire multilignes.

Une seule ligne Multilignes


<?php <?php
// Ceci est un premier commentaire sur une ligne /*
echo 'Hello World !'; Ce programme a été écrit par Dr.
?> Kadar
Il affiche la chaîne 'Hello Word !' à
l'écran
*/
echo 'Hello World !';
?>
Dr. Kadar 8
6. STRUCTURE DE CONTROLE (1/2)
o Structures conditionnelles
switch(expression) {
if(condition1) { case resultat1 :
# instructions à exécuter si la
condition1 est vraie... # instructions à exécuter si
l’expression vaut resultat1...
} elseif (condition2) { break ;
instructions à exécuter si la
condition2 est vraie... case resultat2 :
} elseif (condition3) {
# instructions à exécuter si
instructions à exécuter si la l’expression vaut resultat2...
condition3 est vraie... break ;
…………
} else {
instructions à exécuter si
aucune des conditions n’est default :
vraie...
# instructions à exécuter en
} dernier recours...
Dr. Kadar } 9
6. STRUCTURE DE CONTROLE (2/2)
o Structures de boucles

for(expression1 ; condition ; expression2) { do {


# instructions à exécuter tant que la condition est # instructions à exécuter tant que
vraie... la condition est vraie...
}
Exemple : compter jusqu’à 10 } while(condition);
for ($i = 1 ; $i <= 10 ; $i++) {
echo "$i " ;
Exemple : compter jusqu’à 10
}
$i = 1 ;
Affiche 1 2 3 4 5 6 7 8 9 10. do {
echo "$i " ;
While (condition){ $i++ ;
# instructions à exécuter tant que la condition est } while ($i <= 10) ;
vraie...
} Affiche 1 2 3 4 5 6 7 8 9 10.
Exemple : compter jusqu’à 10
$i = 1 ;
while ($i <= 10) {
echo "$i " ;
$i++ ;
}
Affiche 1 2 3 4 5 6 7 8 9 10.
Dr. Kadar 10
7. TABLEAU (1/2)
 Une variable tableau est de type array. Un tableau accepte des éléments de tout type.

 Exemple :

 $tableau_couleur = array(‘rouge’, ’jaune’, ’bleu’, ‘vert’);

 Indice initiale d’un tableau est 0


 Parcours d’un tableau :
 Exemple 1 :

$i=0;
while($i <count($tableau_couleur)) {// count() retourne le nombre d’éléments
echo $tableau_couleur[$i].’\n’;
$i++;
}

 Exemple 2 :

foreach($tableau_couleur as $i) {
echo $i.’’\n’’;
}
 La variable $i prend pour valeurs successives tous les éléments du tableau $tableau_couleur.

Dr. Kadar 11
7. TABLEAU (2/2)
 Quelques fonctions utiles:

 count($tab) : retournent le nombre d’éléments du tableau

 foreach($tab as $elem): permet a la variable $elem de


prendre pour valeurs successives tous les éléments du tableau
$tab.

 in_array($var,$tab) : dit si la valeur de $var existe dans le


tableau $tab

 sort($tab) : trie alphanumérique les éléments du tableau

 strlen($tab) : Calcule la taille d'une chaîne

 empty($tab) : Détermine si une variable est vide ou non

Dr. Kadar 12
8. FONCTION
 Les fonctions peuvent prendre des arguments dont il n’est pas besoin de
spécifier le type. Elles peuvent de façon optionnelle retourner une valeur.

Exemple :

<?php function CalculSomme($ a, $ b)


{ // Déclaration de la variable locale
$somme = $a + $b;
return $somme;
}
// Affichage du résultat
echo CalculSomme($ a, $ b);
?>

CalculSomme(8,10);

Dr. Kadar 13
9. INCLUSION

 On peut inclure dans un script php le contenu


d’un autre fichier.

 include évalue et insert à chaque appel (même dans


une boucle) le contenu du fichier passé en argument.
 Exemple :
 include(‘’fichier.php’’);

 require insert dans le code le contenu du fichier


spécifié même si ce n’est pas du code php. Est
équivalent au préprocesseur #include du C.
 Exemple :
 require(‘’fichier.php’’);

Dr. Kadar 14
10. REDIRECTION
• <?php
header(‘’Location: home2.php’’);
exit();
• ?>

 Ce script effectue une redirection vers une autre


page. C’est-à-dire que le navigateur du client en
voyant cet entête Location va charger directement
la page indiquée sans regarder la suite du script.
La fonction exit est là pour parer au cas
impossible où le script continuerait son exécution.

Dr. Kadar 15
Technologie Web Avancée

Partie 2 : MYSQL

Le contenu de ce document est soumis à la Licence de Documentation Libre (GNU Free


Documentation License).

Dr. Kadar 16
Plan du Chapitre
1. Présentation
2. Création/sélection d’une base de données
3. Gestion de la base de données
4. Affichage d’une table

Dr. Kadar 17
INTRODUCTION

 MySQL est une base de données implémentant le


langage de requête SQL un langage relationnel très
connu.
 Il existe un outil libre et gratuit développé par la
communauté des programmeurs libres : phpMyAdmin
qui permet l’administration aisée des bases de données
MySQL avec php. Il est disponible sur :
http://sourceforge.net/projects/phpmyadmin/ et
http://www.phpmyadmin.net

Dr. Kadar 18
Dr. Kadar

1. Presentation
 L’outil phpMyAdmin est développé en
PHP et offre une interface intuitive
pour l’administration des base de
données du serveur.

 Cet outil permet de :

❑ créer de nouvelles bases


❑ créer/modifier/supprimer des tables
❑ afficher/ajouter/modifier/supprimer
des tupes dans des tables
❑ effectuer des sauvegarde de la
structure et/ou des données
❑ effectuer n’importe quelle requête
❑ gérer les privilèges des utilisateurs

19
2. Création/sélection d’une base de données
 Avant de manipuler des données, il faut créer une ou des bases
de données.

ETAPE 2 : sélectionnez le
nom de la base à
manipuler (le nombre de ETAPE 1 : Écrivez le nom de
tables de la base apparaît la base de donnée à créer.
entre parenthèses) Puis cliquez sur « Créer »

Dr. Kadar 20
3. Gestion de la base de données

 Choix d’une table à


gérer en particulier

Écrire une requête


MySQL à exécuter
Actions sur les tables : afficher
leur contenu intégral, faire une
sélection sur critères, ajouter des
données, gérer ses propriété
Exécuter une requête
intrinsèques, supprimer, vider.
MySQL contenue
Dr. Kadar
dans un fichier 21
4. Affichage d’une table

Rappel de la base, de
Rappel de la requête la table et du serveur

Colonnes = noms
des attributs de la
table

Liste des
enregistrements de la
table par pages de X
lignes
Supprimer un enregistrement

Accès au formulaire de modification Permet de naviguer dans


d’un enregistrement les pages de résultats

Insertion d’un nouvel Afficher par page de X lignes


enregistrement
Dr. Kadar 22
Technologie Web Avancée

Partie 3 : PHP/MYSQL

Le contenu de ce document est soumis à la Licence de Documentation Libre (GNU Free


Documentation License).

Dr. Kadar 23
AJOUT DE DONNEES

Dr. Kadar 24
Plan du Chapitre

1. Connexion

2. Récuperation de données

3. Création de la requête

Dr. Kadar 25
1. CONNEXION
 Pour se connecter à une base depuis PHP, il faut spécifier un
nom de serveur, un nom d’utilisateur, un mot de passe et un
nom de base de données.

 La fonction de connexion mysql_connect ($serveur, $utilisateur,


$motdepasse, $basedonnee) permet d’établir une connexion à
un serveur MySQL.

Code de connexion est :

$serveur = "localhost";
$utilisateur = "root";
$motdepasse = "";
$basedonnee = "gestion_etudiant";
$connexion=mysqli_connect($serveur,$utilisateur
,$motdepasse,$basedonnee);
Dr. Kadar 26
2. Récuperation de données
/* récupération des données envoyés par le formulaire */

$numero_filiere = $_POST["numero_filiere"];
$nom_filiere = $_POST["nom_filiere"];

3. Création de la requête
/* Création de la requête */

❖ Pour envoyer des données dans une base de donnée, il existe la fonction mysql_query($str) qui prend
pour paramètre une chaîne de caractères qui contient la requête écrite en SQL et retourne un
identificateur de résultat ou FALSE si échec.

mysqli_query($connexion,"INSERT INTO filiere( num_filiere, nom_filiere)


VALUES ($numero_filiere,'$nom_filiere')");

?>

Dr. Kadar 27
CODE COMPLET
<?php

/* connexion */

$serveur = "localhost";
$utilisateur = "root";
$motdepasse = "";
$basedonnee = "gestion_etudiant";
$connexion=mysqli_connect($serveur,$utilisateur
,$motdepasse,$basedonnee);

/* récupération des données envoyés par le formulaire */

$numero_filiere = $_POST["numero_filiere"];
$nom_filiere = $_POST["nom_filiere"];

/* Création de la requête */

mysqli_query($connexion,"INSERT INTO filiere( num_filiere,


nom_filiere) VALUES ($numero_filiere,'$nom_filiere')");
?>
Dr. Kadar 28
AFFICHAGE DE DONNEES

Dr. Kadar 29
Plan du Chapitre
1. Connexion

2. Création de la requête

3. Parcours de la requête

4. Affichage de la requête


Dr. Kadar 30
1. CONNEXION

Code de connexion est :

$serveur = "localhost";
$utilisateur = "root";
$motdepasse = "";
$basedonnee = "gestion_etudiant";
$connexion=mysqli_connect($serveur,$utilisateur
,$motdepasse,$basedonnee);

Dr. Kadar 31
2. Création de la requête
/* Création de la requête */
$result = mysql_query("SELECT * FROM commentaire");

3. Parcours de la requête
▪ Pour récupérer des données à partir d’ une base de donnée, il existe la
fonction mysql_fetch_row($result) qui retourne une ligne de résultat
sous la forme d’un tableau. Les éléments du tableau étant les valeurs
des attributs de la ligne. Retourne FALSE s’il n’y a plus aucune ligne.
/* Parcours de la requête */
while($ligne = mysql_fetch_row($result)) {
$email = $ligne[0];
$avis = $ligne[1];

4. Création de la requête
/* affichage de la requête */
echo "$email, $avis <br />";
}
?>
 Ici, on accède aux valeurs de la ligne par leur indice dans le tableau.

Dr. Kadar 32
Code Complet
<?php

/* connexion */

$serveur = "localhost";
$utilisateur = "root";
$motdepasse = "";
$basedonnee = "gestion_etudiant";
connexion=mysqli_connect($serveur,$utilisateur ,$motdepasse,$basedonnee);

/* Création de la requête */

$resultat = mysql_query(connexion, "select * from filiere");


/* Parcours de la requête */
while($ligne = mysql_fetch_row($resultat)) {
$numero_filiere = $ligne[0];
$nom_filiere= $ligne[1];
/* affichage de la requête */
echo "$numero_filiere, $nom_filiere <br />";
}
?> Dr. Kadar 33
Session
 Une session est un mécanisme technique permettant de
sauvegarder temporairement sur le serveur des informations
relatives à un internaute.
 La sécurité et l'intégrité des données sont améliorées tout au
long de la session.
 Contrairement à une base de données ou un système de fichiers,
la session conserve les informations pendant quelques minutes.
 Les sessions sont particulièrement utilisées pour ce type
d'applications :
 Les espaces membres et accès sécurisés avec authentification.
 Gestion d'un caddie sur un site de vente en ligne.

Dr. Kadar 34
 Pour utiliser les sessions, différentes fonctions PHP s'offrent à nous. Voici
déjà un petit tableau vous permettant de vous familiariser avec ces
différentes fonctions (que nous détaillerons bien sur dans la suite de ce
tutorial):
Fonction Signification

session_start Démarre une session
Enregistre une variable de
session_register
session
session_unregister Efface une variable de session
Retourne l'id de la session en
session_id
cours
Retourne le nom de la session
session_name
en cours
Detruit toutes les variables de
session_unset
la session en cours
session_destroy Destruit la session en cours

Dr. Kadar 35
Exemple d’Application
Etape 1: Connexion

Dr. Kadar 36
Etape 1: Connexion
 // on démarre la session
session_start ();
 // on enregistre les paramètres de visiteur comme
variables de session ($login et $pwd) (notez bien que
l'on utilise pas le $ pour enregistrer ces variables)
$_SESSION['login'] = $_POST['nom'];
$_SESSION['pwd'] = $_POST['password'];
 // on redirige le visiteur vers une page du section
membre
header("Location: menugeneral1.php");

Dr. Kadar 37
Etape 2: Menu General

Dr. Kadar 38
Etape 2: Menu General
// On démarre la session (ceci est indispensable dans toutes
les pages de notre section membre)
session_start ();

echo ‘
// On récupère nos variables de session
Votre login est '.$_SESSION['login']. '

Dr. Kadar 39
Etape 3: DECONNEXION
<?php
// On démarre la session
session_start ();

// On détruit les variables de notre session


session_unset ();

// On détruit notre session


session_destroy ();

// On redirige le visiteur vers la page d'accueil


header ('location: connexion.html');
?>
Dr. Kadar 40

Vous aimerez peut-être aussi