Cours PHP

Cours PHP et MySQL


Télécharger Cours PHP et MySQL

★★★★★★★★★★4 étoiles sur 5 basé sur 2 votes.
Votez ce document:

Télécharger aussi :


PHP

I-Définition :

PHP (Personal Home Page ou Hypertext Preprocessor)  est un langage de scripts. Php est un langage exécuté coté serveur, à la différence de JavaScript et HTML, donc và´tre code n'apparaît pas dans la source de và´tre page Web, seule les informations que vous souhaité affichées seront visible par les visiteurs. 

F Une page qui ne contient que du HTML possède l'extension ".HTML". Une page  qui contient du code PHP possède l'extension ".PHP".

F PHP permet d'interfacer très facilement de très nombreuses bases de données notamment MySQL qui est gratuite et performante.

F Un des gros avantages de PHP est l'intégration dans la même page du code HTML et du code PHP. Vous pouvez avec PHP taper vos lignes de codes en HTML, puis intégrer ou vous le désirez du code PHP et ainsi de suite.

F Ce qu’il bien retenir aussi, c’est que PHP vous permet de créer des pages Web dynamiques, qui se mettent à jour toutes seules.

II-Différences entre HTML_JavaScript et PHPHTML_JavaScript :

1-  Le client : demande avoir une page Web. Il va donc faire une demande au serveur.

2-  Le serveur : répond en envoyant la page Web. 

PHP :

1-  Le client : demande avoir une page Web. Il va donc faire une demande au serveur.

2-  Le serveur n’envoie pas la page au client. Il la génère. En effet le client n’est pas capable de lire une page PHP. Le serveur va transformer la page en page

HTML.

3-  Une fois la page et générée, elle ne contient plus que du code HTML. Le serveur peut l’envoyer au client.

III-Les bases du PHP

Plusieurs balises sont utilisables pour indiquer le début et la fin de la partie en langage PHP.

  /fin

@ Chaque instruction de code PHP doit être terminée par un point virgule.

@ Pour afficher des textes : En utilisant soit la fonction Echo ou Print

N Il est possible de mettre des balises HTML dans une instruction PHP.

@Commentaire :

N Si votre commentaire ne se situe que sur une ligne vous pouvez le faire précéder par deux slashs // ou par un dièse # et sur plusieurs ligne on utilise

/*. 

Exemple : 

  J’ai 23 ans

N Le fichier PHP ne sera exécuté qu’à travers son adresse WEB 

(http://localhost/-¦) ou ( /...) etc A-Les structures des données :

Résultat :

FLes constantes:  define("Nom_Const "," Valeur"Je suis) :Med_Salah

-Il est possible de concaténer des chaînes avec le point:

FLes variables :

Le caractère qui précède toutes les variables PHP est le dollar : $.

Les types texte :

 

Les nombres :

Les booléens : 

Les types des variables : Pour connaitre les types des variables on utilise la fonction Gettype() 

Après la fonction gettypes($var1) il existe un point car le résultat est une chaine de caractère.

Type renvoyé par gettype

Type de la donnée

Integer

Entière

Double

Réelle

String

chaîne simple

Array

liste ou tableau

Object

Objet (pointeur)

Class

Classe

NULL

Type inconnu

Conversion de types: On utilise la fonction Settype($Nom_Var, "type") ; ou



$Nom_Var=(type)$Nom_Var ; 

Int isset ($var) : La fonction Isset retourne le résultat True (1) si la variable var possède une valeur, False (0) sinon. 

@Les opérateurs :

F  D’affectation : = (exemple : $nom= "ali"

F  De comparaison : = =  (exemple: if ($nom= = -œali-){-¦}) ,> ,>= ,< ,<=, 

F  De calcul : +, -,  /, *, % (Modulo) 

F  Logique : &&  et, || ou, !=  différent, ! (non) 

(exemple: if (($nom= = -œali-)&&($prenm !="salah")){-¦})

F  !  not (non)

F  ++: increment, - - decrement (exemple: for(i=1 ;i<=10 ;i++{-¦}Exercice 1 :

à‰crire une script PHP qui permet de déclarer deux variables quelconque et de faire les opérations suivante : addition, soustraction, multiplication, division, reste de division et la somme de toutes les opérations.

Et enfin d’afficher les résultats entiers des tous les opérations sous la forme suivante :

Par exemple : x=20, y=3 Calculer :

Addition = 23

Soustraction = 17

Multiplication = 60

Division = 6

Reste de division = 2 

Somme = 108

B-Les structures de contrà´le simple et itératives :

PComme en JavaScript le Syntaxe est :

F if (condition) 

{cas A}  else  

  {cas B}

F for (initialisation ; condition ; incrément)  {-¦} : 

exemple : for ($i = 0 ; $i

F while (condition) {-¦.};

F do {-¦.}  while  (condition);

F Switch($var)  {Case  $valeur1:

   Liste d’instruction;

  Break;

  Case  $valeur2:

  Liste d’instruction;

  Break;

  Default: liste d’instruction;

  }

Exercice 2 :

à‰crivez une script PHP qui permet de déclarer deux variables x et y, de calculer la puissance de x par y, de calculer la factorielle de y puis d’afficher les résultats sur l’écran. 

Exemple : Si x=4 et y=2 le résultat : « la puissance de 4 par 2= 16 et la factorielle de 2=2 » 

Exercice 3 :

à‰crivez une script PHP permet d’afficher les entier diviser par 5 entre 1 et

100 puis d’afficher leur somme.

  VI- Les entrés sorties en PHP :TLes sorties en PHP :

L’affichage se fait grà¢ce à la fonction Echo ou Print :

$x= "MedSalah" ;

Echo(" je suis $x") ; 

TLes entrées en PHP :

Il existe deux solutions pour récupérer des données à partir d’une page PHP :

1- Récupérer les informations saisies à travers les objets des formulaires (Zone de texte, case à cocher-¦) : on utilise l’une des deux fonctions suivantes :

$_GET[-˜Nom_Objet’] ou $_POST[-˜Nom_Objet’], dépendamment de la valeur de la propriété Methode de la balise FORM (Rappel :<form

action="@" method="POST">) Exemple : Le nom de la page et Exemple.Php

 

Nom :

La méthode Isset permet de retourner le résultat True

(1) si la variable

$_Get[-˜Nom’] possède une valeur si non false,

Action="Exemple.php"

Designer la place du

 résultat de l’exécution de script PHP.

2- Récupération des informations envoyées en paramètre à un fichier PHP à travers la syntaxe suivante : http://adresse-url/nom_du_fichier

.php?variable1=valeur1&variable2=valeur2......  Exemple : <a

href="Exemple.php?Nom=Med&Prenom=Salah">Cliquer ici 

TRappel (les formulaires):

... les formulaires proprement dit ...

N L'attribut "method" vous offre le choix entre Get et Post. La différence entre ces deux méthodes repose sur la faà§on dont les données seront transmises au serveur et exploitées par celui-ci. Généralement quand on récupère les valeurs d’un formulaire, on utilise le préfixe $_Post[-˜Nom_Objet’] et quand on récupère les valeurs de puis une adresse on utilise le préfixe  $_Get[-˜Nom_Objet’]

N L'attribut "action" spécifie l'adresse d'expédition (d’envoi) des données (indique la page à afficher). Exercice :

Créer une page PHP permettant d’afficher un formulaire HTML classique comportant les 4 zone de saisi (Nom, Prénom, adresse et NumTel) et un bouton de type submit, suite à un click sur le bouton un nouvelle fichier affiche tous les informations saisi par l’utilisateur. 

@ Les tableaux en PHP

v Un tableau est composé d’un certain nombre d’éléments possédant chacun une valeur propre ainsi qu’une indice permettant de faire référence à cet élément.

v Par défaut, l’indice du premier élément d’un tableau est zéro.

v L’index dans le tableau peut être indifféremment un entier ou une chaîne de caractères.

v Les éléments d’un tableau peuvent être de type différent.  2 méthodes sont possibles :

༠ Affecter directement les valeurs au tableau :

  Exemple :

 

༠ Utiliser la fonction array().

  Exemple :

 

  On peut utiliser l’opérateur =>afin de spécifier les indices particuliers des éléments  d’un tableau. 

   

Exemple récapitulatif :

 

Parcourir un tableau

Les deux fonctions each() et list() peuvent être utilisées conjointement afin de parcourir un tableau, même si les indices ne sont pas séquentiels.

Exemple :   Résultat :

Il existe d’autres fonctions prédéfini en PHP permettant de gérer un tableau :

Fonction

Description

Exemple

reset()

Remet le pointeur interne de tableau au début. 

reset ($tab2) ;

pos()

Retourne la valeur de l'élément courant d'un tableau.

$a=pos ($tab2) ;



key()

Retourne l'indice de l'élément courant d'un tableau. 

$b=key($tab2) ;

next() 

Avance le pointeur interne d'un tableau. 

next($tab2) ;

prev() 

Recule le pointeur courant de tableau. 

prev($tab2) ;

end() 

Positionne le pointeur de tableau en fin de tableau. 

end($tab2) ;

sizeof() 

Retourne le nombre d’éléments dans un tableau 

$c=sizeof($tab2) ;

sort()

Trier un tableau par valeur croissante

sort($tab2) ;

rsort()

Trier un tableau par valeur décroissante

rsort($tab2) ;

ksort()

Trier un tableau par indice croissante

ksort($tab2)

krsort()

Trier un tableau par indice décroissante

krsort($tab2)

Exemple 1 :

Exemple 2 :

Exercice 1:

à‰crivez une script PHP permettant d’initialiser un tableau de 6 éléments d’une manière associative (noir=52, bleu=89, rouge=70, jaune=30, blanc=40 et vert=10) T.A.F : Afficher tous les éléments du tableau.  Afficher la taille du tableau. 

   Afficher le contenu du couleur rouge.

  Trier les indices du tableau d’une manière descendante.  Afficher ces derniers comme dans l’exemple ci-dessus.

T Les Chaines de caractère en PHP

TLes fonctions prédéfinies sur les chaines de caractère : (Exemple :$x="Bonjour Salah  ")

Fonction

Description

Exemple

subst(string,début,taille)

Retourne une portion de string

$y=substr($x,7,15) ;//-˜salah’ 

trim(string)

retire les espaces de début et de fin

$w=trim($x) ;//’Bonjour Salah’

strlen(string)

Retourne la longueur de la chaîne

$y=strlen($w) ;//13

implode(string sep,tab) sep :Separateur

Retourne une chaîne séparée de tous les éléments du tableau 

$pays = array ("a","b","c");

$y=implode("|",$pays);//a|b|c

explode(string sep,strin) strin:String/sep: séparateur

Retourne un tableau qui contient les éléments de la chaîne string

$chain="a|b|c" ;

$tab=explode("|",$chain) ; 

str_replace()

Remplace toutes les occurrences de modèle dans chaîne par autre

$z=str_replace

("Salah","Med",$x);

Exercice 2:

à‰crivez une script PHP permettant d’initialiser la chaine ch1 à "Je suis" et ch2 à "Med Salah" T.A.F : Concaténer les deux chaines dans une autre.

Afficher les tailles de trois chaines comme : (« La taille de ch1=-¦, la taille de ch2=-¦ et la  taille de ch3=-¦ »)

Remplacer le mot Salah par "Ali" et afficher le résultat.

Retourner un tableau qui contient les éléments de la chaine. 

T Les fonctions en PHP

Comme en C la syntaxe et :

Function Non_Fonction ($liste des argument)

{

Instruction1 ;

Instruction2 ;

  -¦

Instruction n ;

[return $valeur de retour ;]

}

Exemple :

Remarque : En PHP toute fonction doit être définie avant d’être utilisée. Exercice 3:  

- à‰crivez une script PHP permet d’effectuer le calcul combinatoire :

Avec n et p sont déclaré par l’utilisateur puis afficher le résultat. 

Correction Exercice 1 :

Correction Exercice 2 :

Correction Exercice 3 :

N Utilisation de MySQL avec PHP

L’utilisation de MySQL avec PHP s’effectue en quatre étapes principales: § Connexion au serveur des données.

§  Sélection de la base des données.

§  Exécution de la Requête.

§  Exploitation des requêtes.

I.  Connexion au serveur des données : (En utilisant la fonction : mysql_connect())  int mysql_connect (string hostname, string username , string password):  hostname: L’adresse du serveur de donnée qui à comme valeur par défaut "localhost".  username: Le nom d’utilisateur qui à comme valeur par défaut "root".  password: Le mot de passe qui à comme valeur par défaut " ". 

La fonction mysql_connect() retourne un entier permettant de vérifier l’établissement de la  connexion, par exemple : 



  Ou encore :

II.  Sélection de la base des données : (En utilisant la fonction : mysql_select_db()) int mysql_select_db(string database_name, [int link_identifier])  database_name : Nom de la base de données (obligatoire) link_identifier : Identifiant de la connexion (facultatif) si on ne donne pas le paramètre link_identifier, la fonction utilise la dernière connexion ouverte.

La fonction mysql_select_db() retourne true ou false selon que l’opération réussit ou non. Exemple :

Ou encore :

III.  Exécution d’une requête SQL : (En utilisant la fonction : mysql_query()) int mysql_query (string query, [int link_identifier]) 

Cette fonction permet d’envoyer au serveur MySQL une instruction SQL, par exemple :

IV.  Exploitation d’une requête 

A la suite d’une requête de sélection (d’insertion, de modification ou de suppression), les données sont mises en mémoire. Pour pouvoir les exploiter, PHP gère un pointeur de résultat, c-à -dire qu’il repère un enregistrement parmi les autres puis il le gère.

La fonction de lecture du résultat :

à˜ Array mysql_fetch_array (int result, int result_type)

Extrait la ligne sous forme d’un tableau associatif. Le paramètre result_type est facultatif. Il peut prendre les valeurs suivantes : MYSQL_NUM (Les indices du tableau sont numériques), MYSQL_ASSOC (Les indices du tableau sont associatifs) ou MYSQL_BOTH (Les indices du tableau sont à la fois numériques et associatifs). 

Si le paramètre result_type n’a pas spécifié, MYSQL_BOTH est considérée comme valeur par défaut de cet argument.

 

à˜ int mysql_num_rows (int result) 

Retourne le nombre d’enregistrements qui ont été retournés par la sélection.  Exemple :

< ? 

  $requete = "SELECT * FROM membres"; 

  $result = mysql_query($requete);  echo "il y a" .mysql_num_rows($result) ." membre(s)";  while($enregistrement = mysql_fetch_array($result)) 

  {

  echo $enregistrement["nom"]. " " . $enregistrement["prenom"] ; 

  } ?> 

Généralité et rappel sur les requêtes SQL :

Sélection

Insertion

Modification

mysql_connect("localhost",

"root"," ") ;

mysql_select_db("base1") ; $requete ="Select * From tab"; mysql_query($requete);

mysql_connect("localhost","root"," ") ; mysql_select_db("base1") ;

$req="Insert into tab values(-˜120’,..)";

mysql_query($req);

mysql_connect("localhost",

"root"," ") ;

mysql_select_db("base1") ;  $re="Update tab set -¦ where" mysql_query( $re);

ï‚·   Pour le requête de type Delete on utilise la même syntaxe.  Autre fonction : 

int mysql_affected_rows(): Permet de connaître le nombre d’enregistrement affectés par  la requête Update.(

Application :

Créer une application Web de Gestion de Stock qui possède les fonctionnalités suivante :

-  Page d’accueille qui comporte deux liens vers Saisie.html et Recherche.php 

(La paged’accueille à l’extension PHP car il comporte la fonction Date()).  - Une interface de saisie des produits.

-  Une interface de recherche des produits.

Page d’accueille    Interface de saisie    Interface de recherche 

On suppose qu’on dispose d’une base de données "Stock", composée d’une table Produit.  L’inscription se fait avec l’utilisation d’un autre page Ins.php (ce dernier affiche "Inscription avec sucées" après l’insertion)  et la recherche se fait dans  le même page Recherche.php

Correction :

  //Recherche.php

Recherche

Recherche

Numéro de produit:

num nom Date Prix

  //Accueille.php

Acueille

Gestion de Stock

   

Inscription14   >
Recherche


0