Formation PHP d´ebutant
Table des mati`eres
1 Le principe de PHP 3
1.1 Langage cˆot´e serveur . . . . . . . . . . . . . . . . . . . . . . . . . . ...
1 LE PRINCIPE DE PHP
1 Le principe de PHP
1.1 Langage cˆot´e serveur
PHP est un langage dit cˆot´e serveur. Cel`a signifie ...
2 LES BASES DU LANGAGE
Vous voyez que PHP s’ins`ere avec des marqueurs de d´ebut et de fin. Le marqueur d’ouverture
peut n’...
2 LES BASES DU LANGAGE
#conversion auto : php r ˜A c attribue l e type s ’ i l l e faut
$a=$c ;
?>
Les variables en PHP
2....
2 LES BASES DU LANGAGE
$d = $a + 1 ;
$d = $b − $a ;
$d = $c ∗ $b ;
$e = 5 / $a ;
$f = ( 5 ∗ $a ) − ( $b ∗ $c + 2 ) ;
$a+ =...
2 LES BASES DU LANGAGE
Concat´ener des chaˆınes
2.2 Les fonctions
PHP fournit un tr`es grand nombre de fonctions pr´ed´efin...
3 COMMUNIQUER AVEC PHP
2.2.4 Fonctions personnelles
Vous pouvez d´efinir vous-mˆeme des fonctions. Regardez l’exemple suiva...
3 COMMUNIQUER AVEC PHP
<style >
@import url ( ’ css / s t y l e . css ’ ) ;
</style >
</head>
<body>
<form name=”monFormul...
4 FACTORISER LE CODE AVEC PHP
$op2=$ POST [ ”op2” ] ;
$ r e s u l t a t=$op1+$op2 ;
echo( ”Le r ˜A c sultat est $ r e s u ...
5 R´EF´ERENCES
5 R´ef´erences
– Contacter l’auteur : jjansen@etu.enseeiht.fr
– Documentation officielle : http ://www.php.ne...
Prochain SlideShare
Chargement dans…5
×

Php seance1

464 vues

Publié le

0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
464
Sur SlideShare
0
Issues des intégrations
0
Intégrations
2
Actions
Partages
0
Téléchargements
10
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Php seance1

  1. 1. Formation PHP d´ebutant
  2. 2. Table des mati`eres 1 Le principe de PHP 3 1.1 Langage cˆot´e serveur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 Pour travailler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 Langage de pr´e-processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 Les bases du langage 4 2.1 La syntaxe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1.1 Les variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1.2 L’affectation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1.3 Les tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.4 Les op´erations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1.5 La concat´enation de chaˆıne . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2 Les fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2.1 La fonction echo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2.2 La fonction include . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2.3 Quelques fonctions utiles . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2.4 Fonctions personnelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3 Communiquer avec php 8 3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.2 Compl´ement de XHTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.3 R´ecup´erer les donnes POST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.4 R´ecup´erer les donn´ees GET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4 Factoriser le code avec PHP 10 4.1 Ins´erer un menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4.2 Une autre m´ethode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 5 R´ef´erences 11 2
  3. 3. 1 LE PRINCIPE DE PHP 1 Le principe de PHP 1.1 Langage cˆot´e serveur PHP est un langage dit cˆot´e serveur. Cel`a signifie que c’est le serveur web `a qui vous demandez la page qui va ex´ecuter vos programmes PHP, et non la machine avec laquelle vous surfez. Cel`a est tr`es important, car PHP n’a plus aucun effet une fois la page charg´ee. De plus, les visiteurs ne peuvent pas visualiser le contenu de vos fichiers PHP, puisque le code s’y trouvant est ex´ecut´e et en aucun cas affich´e. 1.2 Pour travailler Pour pouvoir utiliser PHP, il vous faut donc un serveur web. Un simple navigateur ne suffit pas. Pour cette formation, utilisez l’h´ebergement fourni par INP-Net. Mettez vos documents dans votre r´epertoire www public et acc´eder-y via le chemin http ://bde.enseeiht.fr/~votrelogin/votrefichier.php 1.3 Langage de pr´e-processing Les navigateurs web ne savent interpr´eter que du XHTML. Par cons´equent, lorsque PHP est ex´ecut´e, il produit du code XHTML. En fait, vous pouvez m´elanger le PHP et le code HTML. Le code PHP sera ex´ecut´e et remplac´e par le code HTML qu’il renvoie. Voici un premier programme en PHP pour vous en convaincre. <?php echo( ”<?xml version =”1.0” encoding=”iso −8859−15”?>” ) ; ?> <!DOCTYPE html PUBLIC ”−//W3C//DTD XHTML 1.0 S t r i c t //EN” ” http ://www. w3 . org /TR/xhtml1/DTD/xhtml1−s t r i c t . dtd”> <html xmlns=” http ://www. w3 . org /1999/ xhtml” xml : lang=” f r ”> <head> <t i t l e >Page vide pour tester </t i t l e > <style > @import url ( ’ css / s t y l e . css ’ ) ; </style > </head> <body> <?php echo( ”Bonjour tout l e monde ! ” ) ; ?> </body> </html> Un premier programme en PHP 3
  4. 4. 2 LES BASES DU LANGAGE Vous voyez que PHP s’ins`ere avec des marqueurs de d´ebut et de fin. Le marqueur d’ouverture peut n’ˆetre que <?. C’est pour quoi nous avons du dire `a PHP d’´ecrire la premi`ere ligne du code source HTML, car il ne s’agit pas de code PHP, et il tente de l’interpr´eter comme tel. Nous vous d´econseillons fortement d’utiliser le marqueur d’ouverture <?. Utilisez toujours le marqueur <?php. 2 Les bases du langage PHP est un langage de programmation, qui est `a l’origine un langage de script. Cel`a signifie qu’il n’est pas compil´e mais interpr´et´e. Cel`a implique, mˆeme si la th´eorie ne le dit pas, que l’´ecriture de son code est facilit´e par nombre de conversions automatiques qu’il effectue. Nous allons voir comment utiliser les commandes PHP de base. Un fichier d’exmple est montr´e `a la fin. 2.1 La syntaxe La syntaxe de PHP ressemble beaucoup `a celle de C, en plus simple. Vous ne serez pas d´epays´es si vous savez coder en C. Une commande doit toujours se terminer par un point- virgule, comme en C. 2.1.1 Les variables Les noms de variables commencent toujours par un $, suivi de lettres de l’alphabet, de chiffres, ou d’underscores. Attention cependant : le premier caract`ere apr`es le $ doit toujours ˆetre une lettre ou un underscore, jamais un chiffre. Les noms de variables sont sensibles `a la casse. Les variables sont typ´ees, mais vous n’avez pas besoin de d´eclarer leur type et pouvez le changer en cours de route, sans pr´evenir PHP. Il effectuera toutes les conversions qu’il peut tout seul. L’avantage est qu’on code beaucoup plus vite. L’inconv´enient est qu’on fait beaucoup plus d’erreurs. 2.1.2 L’affectation La syntaxe de l’affection est la mˆeme qu’en C, `a savoir le nom de la variable, suivi du signe ´egal, suivi de la valeur `a affecter. <?php # Variable de type integer $a=1; # Type f l o a t $b =1.5; #Type String $c=” Salut l e s gens ” ; #Type boolean $d=true ; 4
  5. 5. 2 LES BASES DU LANGAGE #conversion auto : php r ˜A c attribue l e type s ’ i l l e faut $a=$c ; ?> Les variables en PHP 2.1.3 Les tableaux Les tableaux en PHP sont tr`es simples `a utiliser. Ils sont dynamiques et vous pouvez rajouter des ´el´ements quand vous voulez. Il sont aussi associatifs, ce qui est tr`es pratique. Voyez plutˆot. <?php $tab1=array () ; $tab1 [0]= ”Roger” ; $tab1 [1]= ”Marcel” ; $tab []= ”Robert” ; $tab2 [ ”papa”]=”Roger” ; $tab2 [ ”maman”]=” Marcelle ” ; $tab2 [ ” f i l s ”]=”Robert” ; $a=$tab [ 1 ] ; $b=$tab2 [ ”maman” ] ; ?> Les tableaux en PHP 2.1.4 Les op´erations Les op´erations math´ematiques standards sont utilisables. <?php $a = 1; $b = 2; $c = 5; 5
  6. 6. 2 LES BASES DU LANGAGE $d = $a + 1 ; $d = $b − $a ; $d = $c ∗ $b ; $e = 5 / $a ; $f = ( 5 ∗ $a ) − ( $b ∗ $c + 2 ) ; $a+ = 2; $b− = 5; $d++; ++$c ; ?> Op´erations standards 2.1.5 La concat´enation de chaˆıne Le symbole de concat´enation de chaˆıne de base est le point. Mais PHP poss`ede une autre m´ethode de concat´enation tr`es pratique. Exemple dans ce code : <?php $nombre=2; $ami=”Roger” ; $ami2=”Norbert” ; # $moi contient ”J ’ ai 2 amis . Ce sont Roger et Norbert” $moi=”J ’ ai ” . $nombre . ” amis . Ce sont ” . $ami . ” et ” . $ami2 . ” . ” ; # $moi contient ”J ’ ai 2 amis . Ce sont Roger et Norbert” $moi=”J ’ ai $nombre amis . Ce sont $ami et $ami2 . ” ; # $moi contient ”J ’ ai $nombre amis . Ce sont $ami et $ami2 .” $moi=’J ’ ai $nombre amis . Ce sont $ami et $ami2 . ’ ; $moi.=” J ’ aime mes amis” ; # $moi contient ”J ’ ai $nombre amis . Ce sont $ami et $ami2 . J ’ aime mes amis .” ?> 6
  7. 7. 2 LES BASES DU LANGAGE Concat´ener des chaˆınes 2.2 Les fonctions PHP fournit un tr`es grand nombre de fonctions pr´ed´efinies, et vous pouvez en d´efinir vous mˆeme. 2.2.1 La fonction echo C’est la fonction la plus importante de php. C’est elle qui va renvoyer du code HTML de sortie. C’est elle qui va afficher tout ce que l’utilisateur verra. Vous l’avez d´ej`a rencontr´ee dans le premier exemple. 2.2.2 La fonction include C’est la deuxi`eme fonction la plus importante de PHP. Elle vous permet d’inclure du code HTML ou PHP pr´esent dans un autre fichier. Le code HTML du fichier appel´e est affich´e comme avec echo, et le code PHP est ex´ecut´e. 2.2.3 Quelques fonctions utiles <?php count( $tableau ) ; #renvoie l e nombre d ’ ˜A c l˜A c ments contenus dans tableau strlen ( $chaine ) ; #Renvoie l e nomrbre de caract ˜A¨re de la chaine explode ( ” , ” , $chaine ) ; #Transforme une chaine en tableau en la coupant selon l e caract ˜A¨re s ˜A c pcifi ˜A c implode( ” , ” , $tableau ) ; #Op ˜A c ration inverse : l e tableau est tranform ˜A c en chaine . trim( $chaine ) ; # Renvoie la chaine priv ˜A c e des eespaces blancs de d ˜A c but et de f i n . print r ( $tableau ) ; # Affiche tout l e contenu d ’un tableau , pratique pour d ˜A c buguer ?> ; 7
  8. 8. 3 COMMUNIQUER AVEC PHP 2.2.4 Fonctions personnelles Vous pouvez d´efinir vous-mˆeme des fonctions. Regardez l’exemple suivant. <?php function c a l c u l ( $a , $b ) { $ r e s u l t a t=$a+b ; echo( ”J ’ ai calcul ˜A c ! ” ) ; return $ r e s u l t a t ; } function calc ul2 ( $a , $b=1){ return $a+$b ; } echo( ”PHP a calcul ˜A c ” . c a l c u l (4 ,7) ) ; echo( ”<br /> et aussi ” . c alc ul2 (2) . ” et ” . calc ul2 (2 ,2) ) ; ?> Fonctions d´efinies par l’utilisateur 3 Communiquer avec php 3.1 Introduction Le plus grand int´erˆet de PHP est d’interagir avec l’utilisateur. Pour ce faire, PHP sait r´ecup´erer des variables particuli`eres. Nous allons ´etudier comment les utiliser. 3.2 Compl´ement de XHTML Le premier int´erˆet de PHP est de pouvoir communiquer avec l’utilisateur. Pour ce faire, les langages Web (il n’y a pas que PHP) r´ecup`erent des donn´ees envoy´ees par les utilisateurs. Ces donn´ees sont soumises via ce qu’on apelle des formulaires. Le XHTML permet la r´edaction de formulaires. Voyez ce code. <?xml version=” 1.0 ” encoding=” iso −8859−15”?> <!DOCTYPE html PUBLIC ”−//W3C//DTD XHTML 1.0 S t r i c t //EN” ” http ://www. w3 . org /TR/xhtml1/DTD/xhtml1−s t r i c t . dtd”> <html xmlns=” http ://www. w3 . org /1999/ xhtml” xml : lang=” f r ”> <head> <t i t l e >Page vide pour tester </t i t l e > 8
  9. 9. 3 COMMUNIQUER AVEC PHP <style > @import url ( ’ css / s t y l e . css ’ ) ; </style > </head> <body> <form name=”monFormulaire” action=” connexion . php” method=” post ”> <div> <p>Login : <input type=” text ” name=”nom” /><p> <p>Mot de passe : <input type=”password” name=”motdepasse” /></p> <p>Acceptez vous nos conditions ? <input type=”checkbox” name=” conditions ” /><p> <p><input type=”submit” value=”Envoyer” /></p> </div> </form> </body> </html> Un formulaire en XHTML 3.3 R´ecup´erer les donnes POST Nous allons maintenant pouvoir, apr`es soumission du formulaire, r´ecup´erer des donn´ees entr´ees par l’utilisateur. Voyez le fichier calculette.php. <!DOCTYPE html PUBLIC ”−//W3C//DTD XHTML 1.0 S t r i c t //EN” ” http ://www. w3 . org /TR/xhtml1/DTD/xhtml1−s t r i c t . dtd”> <html xmlns=” http ://www. w3 . org /1999/ xhtml” xml : lang=” f r ”> <head> <t i t l e >Page vide pour tester </t i t l e > <style > @import url ( ’ css / s t y l e . css ’ ) ; </style > </head> <body> <?php $op1=$ POST [ ”op1” ] ; 9
  10. 10. 4 FACTORISER LE CODE AVEC PHP $op2=$ POST [ ”op2” ] ; $ r e s u l t a t=$op1+$op2 ; echo( ”Le r ˜A c sultat est $ r e s u l t a t ” ) ; ?> <form name=”monFormulaire” action=” c a l c u l e t t e . php” method=” post ”> <div> <input type=” text ” name=”op1” /> + <input type=” text ” name=”op2” /> = <input type=”submit” value=”Envoyer” /> </div> </form> </body> </html> Un mini additionneur 3.4 R´ecup´erer les donn´ees GET A pr´esent, reprenez votre fichier et modifier le ”post” du formulaire par ”get”. Envoyez le formulaire. Vous voyez que PHP n’a pas captur´e vos donn´ees. Il faut utiliser le tableau $ GET pour le faire. Mais regardez votre barre d’adresse : les variables entr´ees apparaissent dans l’URL. C’est l`a la diff´erence fondamentale entre POST et GET. Cel`a vous permet de communiquer avec PHP avec de simples liens hypertextes. Cr´eer un lien qui effectue un calcul en passant les param`etres dans son URL, `a la mani`ere de celle que vous voyez. 4 Factoriser le code avec PHP Factoriser du code signifie se d´ebrouiller pour ne pas avoir `a retaper les mˆemes bouts de code dans plusieurs fichiers. Pour un menu identique sur tout le site par exemple. 4.1 Ins´erer un menu On peut pour cel`a utiliser la fonction include. Ouvrez le fichier page1.php et regardez son effet. Cette m´ethode consiste `a r´eutiliser dans vos pages un bout de code que vous stockez ailleurs. 4.2 Une autre m´ethode Cette deuxi`eme m´ethode consiste `a rendre le corps de la page dynamique au lieu de ses d´ecorations. Ouvrez le fichier pagedyn.php pour tester. Cette deuxi`eme m´ethode consiste `a charger un contenu stock´e ailleurs. C’est un approche plus puissante et plus souple, bien que plus complexe `a mettre en place sur un site web complet. 10
  11. 11. 5 R´EF´ERENCES 5 R´ef´erences – Contacter l’auteur : jjansen@etu.enseeiht.fr – Documentation officielle : http ://www.php.net – Catalogue de scripts divers : http ://www.phpscripts-fr.net/ 11

×