Escolar Documentos
Profissional Documentos
Cultura Documentos
PHP
1/24
SOMMAIRE
Les logiciels
p. 3
Easyphp
p. 5
Wamp Server
p. 6
Xampp Server
p. 6
Netbeans
p. 8
p. 12
p. 12
p. 13
p.13
p.14
p. 16
p. 16
p. 16
Les Commentaires
p. 16
Les Conditions
p. 17
Les tests
p. 17
Les Boucles
p. 18
Les Fonctions
p. 19
Les Tableaux
p. 21
2/24
Les logiciels
1. CE QU'IL FAUT INSTALLER
1.1. SI VOUS ETES SOUS WINDOWS
Serveurs
Apache + MySQL + PHP : Les serveurs vont permettre dexcuter vos scripts sur sa machine en local et
ventuellement de vous procurer un accs des bases de donnes.
Utilisez au choix une des solutions suivantes :
ou
ou
Editeur de texte
Notepad++ : un diteur de texte qui colore automatiquement le code que lon entre en fonction de
la logique de votre langage informatique. Cette aide indispensable sappelle la coloration
syntaxique. ( http ://notepad-plus.sourceforge.net/fr/site.htm )
ou
Auto compltion de code (lditeur complte votre code au fur et mesure que vous le
saisissiez)
Affichage en direct des erreurs de syntaxes
Accs des bibliothques de fonctions
Insertion simplifie de code html
est
un
peu plus
complexe
quun
diteur
de
texte.
3/24
<head>
<title>Ma page d'accueil </title>
</head>
<body>
<h1>Bienvenue sur le site de toto </h1>
<p> Toto fait de l'anglais :</p>
<?php
echo '<p>Hello ! What is the day today ? It is '.date("l").' !</p>';
?>
</body>
</html>
Quand vous l'enregistrez, sur votre bureau, renommez-le test.php, (changez l'extension de .html en .php). Ainsi,
le serveur php est avis que cette page contient du code PHP (que le navigateur ne sait pas afficher en ce
qui le concerne).
Fermez votre diteur. Double-cliquez directement sur votre page test.php : Quelle dception !
Cela ne vous ouvre pas une page web mais... le code que vous venez de quitter, sous un diteur de texte qui est
probablement bloc-notes sans coloration syntaxique.
C'est ici que le fait d'avoir install Xampp Server sur votre machine va vous tre utile. En effet, il vous faut un
interprteur PHP install en local.
4/24
3. EASYPHP (WINDOWS)
EasyPHP est un package WAMP (Windows Apache MySQL PHP) comprenant :
Noter galement loption Administration ou Ctrl+A qui vous permettra de configurer vos diffrents
serveurs.
5/24
4. WAMP SERVER
Le principe est exactement le mme que pour EasyPHP.
5. XAMPP SERVER
Une fois le logiciel install en double cliquant sur l'icne prsent sur le bureau la fentre suivante s'ouvre :
6/24
Pour vrifier que votre serveur est correctement lanc, lorsque vous cliquerez sur le bouton Start, vous aurez le
message Running en vert en face du serveur lanc correctement :
7/24
6. NETBEANS
6.1. Configuration dun projet sous Netbeans
Dmarrez Netbeans.
Crez un nouveau projet :
Netbeans tant un IDE (Environnement de Dveloppement Informatique) multi-langages, nous devons lui
spcifier le langage de programmation utilis, ici le PHP.
Slectionnez PHP Application.
8/24
Dans mon cas, jutilise EasyPHP qui est install dans C:\Program Files donc mon localhost correspond bien
avec C:\Program Files\EasyPHP\www.
Cliquez sur Next puis sur Finish (sans rien cocher sur le dernier cran).
9/24
Votre fichier est cr. Il contient juste les balises php ainsi quun message (en commentaire) pour vous permettre
de modifier le code par dfaut.
Cela est d au fait que le port sur lequel on essaie daccder lhte local, nest pas dfini.
10/24
Eventuellement, vous pouvez spcifier le nom du fichier php utilis (sil y a plusieurs fichiers ayant une extension
php).
Ds que le point darrt est atteint, le script est mis en pause. Nous
pouvons donc observer les variables (ici la variable i) dans la zone
Comme le point darrt se situe lintrieur dune boucle, nous pouvons suivre son
volution en relanant le script jusquau point darrt, en cliquant sur licne ou F5.
11/24
12/24
1. DEFINITION
Un formulaire HTML se dfinit par la balise HTML <FORM> </FORM>.
<FORM name=".." method=".." action=".." >
.
</FORM>
La balise HTML <FORM> doit contenir deux attributs indispensables :
-
method qui dfinit la mthode d'envoi (POST et GET). La diffrence entre ces deux mthodes repose
sur la faon dont les donnes seront transmises au serveur et exploites par celui-ci. Avec le temps, la
mthode post s'est impose car elle apparat plus efficace et permet le traitement d'une quantit plus
importante de donnes.
dans le cas d'un envoi vers en adresse lectronique (email), on utilise le protocole mailto: suivi
de l'adresse lectronique de destinataire (gnralement votre adresse email) :
<FORM method="post" action="mailto:algo1@univ.fr"> (sans espace entre mailto:
et l'adresse email !)
Il n'est pas inutile de prvoir l'attribut NAME="nom" si la page comporte plusieurs formulaires.
le champ multi-lignes.
2.1.
Simple ligne
<INPUT type="text" name="nom" value=".." size="4" >
type dfinit la forme de la balise <INPUT>, donc pour une zone de texte simple c'est "text".
name donne un nom au champ texte. Trs important car ce nom est associ la valeur.
value dfinit le texte mis au dpart dans le champ, si le champ est vide alors value="". sachez que si
vous rentrez une valeur par dfaut, l'internaute sera oblig de slectionner le texte de votre champ texte
puis de l'effacer pour pouvoir crire un nouveau texte (sauf si vous utilisez le javascript).
13/24
2.2.
Multi-lignes
<TEXTAREA name="nom" cols = "30" rows="5" > Texte dfaut </TEXTAREA>
La case cocher permet de faire des plusieurs choix sur un ensemble de propositions.
3.1.
La case cocher
<INPUT type="checkbox" name="nom" >
type dfinit la forme de la balise <INPUT>, donc pour une case cocher, c'est
"checkbox",
name donne un nom la case. Trs important car ce nom est associ la
valeur (value) lorsque l'on rceptionne le formulaire,
3.2.
Le bouton radio
<INPUT type="radio" name="nom" value="Nom_du_choix">
type dfinit la forme de la balise <INPUT>, donc pour un bouton radio, c'est
"radio",
name donne un nom une variable. Pour faire un seul choix dans un
ensemble de propositions, le nom doit tre identique,
14/24
size dtermine le nombre d'options visibles. Il doit tre < ou = au nombre de balises <OPTION>
multiple signifie que l'on peut faire plusieurs slections. Si vous ne le mettez pas, l'internaute ne pourra
faire qu'une slection.
La balise <OPTION> correspond un lment de la liste. Vous pouvez donc avoir plusieurs balises
<OPTION>
value est la valeur renvoye dans le formulaire, elle sera associe la variable name de la balise
<SELECT>. Facultatif
Dans ce cas, on aura un premier fichier nomm saisie_exo0.html qui fera appel au script exo0.php .
Fichier: Saisie_Exo_00.html
<form name="form1" method="post" action="Exo_00.php">
Code Postal:<input type="text" name="cp" />
Ville:<input type="text" name="ville" />
<input type="submit" value="OK">
Fichier: Exo_00.php
<?php
?>
echo 'La ville nomme '.$_POST['ville'].' possde le code postal: '.$_POST['cp'].'<br />';
ATTRIBUTS IMPORTANTS :
5.2.
On doit dans ce cas tester l'existence de la variable $_POST[ ' x ' ] avant de l'utiliser.
On utilise pour cela la fonction isset() qui nous renvoie une valeur boolenne (true or false) si la variable existe.
15/24
<?php
?>
EXPLICATIONS :
Lors de la premire excution, les variables $_POST['...'] n'existent pas. On va donc excuter la
partie correspondant au formulaire (2me partie du script).
Aprs le clic sur le bouton OK, la page est recharge mais les variables $_POST['...'] existent. C'est
donc la premire partie du script qui est excute.
Notez dans ce cas que l'attribut action n'a pas besoin d'tre renseign puisqu'on excute le mme
fichier.
REMARQUE :
Dans un formulaire, il est frquent de devoir vrifier que le champ est rempli. On utilisera une fonction empty()
pour dterminer si la variable est vide .
if ( isset($_POST[ ' x ' ]) && !empty($_POST[ ' x ' ]))
{
}
Dans cet exemple, on teste si la variable $_POST[ ' x ' ] existe et si elle est non vide.
ATTENTION :
S'il est trs utile de raliser ce test pour les saisies de texte (nom, prnoms, n tlphone...) il ne convient pas de
le raliser pour des saisies de valeurs numriques. En effet, une saisie d'une valeur nulle sera interprte comme
tant vide . On ne pourra donc pas accder la deuxime partie du script.
16/24
PHP
age 20
$age = 20 ;
LES SORTIES
Algorithmie
PHP
Afficher ( Bonjour )
annee 2009
Afficher ( Nous sommes en , annee)
$annee = 2009;
echo ' Nous sommes en '.$annee.' ' ;
REMARQUE :
La balise <br/> permet daller la ligne aprs un affichage lcran.
Le caractre \ plac devant une apostrophe permet de la neutraliser pour ne pas qu'elle soit
considre comme fin de l'affichage.
Les balises <b> ... </b> permettent d'afficher un texte en gras.
3. LES COMMENTAIRES
Pour commenter
PHP
Plusieurs lignes
17/24
4. LES CONDITIONS
Algorithmie
PHP
gal
==
diffrent de
!=
strictement infrieur
<
<
strictement suprieur
>
>
infrieur ou gal
<=
suprieur ou gal
>=
ET logique
ET
&&
OU logique
OU
||
NON logique
NON
5. LES TESTS
Algorithmie
Slection simple :
Si (condition) alors
Bloc dinstructions
FinSi
Slection avec alternative 1 :
Si (condition) alors
Bloc dinstructions
Sinon
Bloc dinstructions
FinSi
PHP
if (condition)
{
; // bloc dinstructions
; // bloc dinstructions
}
if (condition)
{
; // bloc dinstructions
}
else
{
; // bloc dinstructions
}
if (condition)
{
; // bloc dinstructions
}
elseif
{
}
else
{
}
; // bloc dinstructions
; // bloc dinstructions
18/24
Algorithmie
PHP
switch (expression)
{
case valeur1 :
; /* bloc dinstructions */
break ;
case valeur2 :
; /* bloc dinstructions */
break ;
default :
; /* bloc dinstructions */
}
6. LES BOUCLES
PHP
Algorithmie
Boucle dterministe :
Pour condition de dpart A
condition darrt Par_Pas_De
valeur Faire
Bloc dinstructions
Syntaxe
for ( condition de dpart ; condition
de rebouclage ; valeur du pas)
{
... ; // blocs dinstructions
}
FinPour
Exemple
Boucle indterministe n1 :
TantQue (condition) faire
Bloc dinstructions
while (condition)
{
FinTantQue
Boucle indterministe n2 :
do
Faire
Bloc dinstructions
TantQue (condition)
{
... ; // blocs dinstructions
} while (condition);
$i = 0 ;
while ( $i < 10)
{
echo $i ;
$i++ ;
}
$i = 0 ;
do
{
echo $i ;
$i++ ;
} while ( $i < 10) ;
19/24
7. LES FONCTIONS
Comme pour lalgorithmie, il y a deux faons de programmer les fonctions :
?>
function Test()
{
; // bloc dinstructions de la fonction
}
;
test() ; // appel de la fonction
;
Dclaration de la fonction
Fichiers :
exemple1.php
< ?php
?>
include (fonction.php) ;
;
Test() ; // appel de la fonction
;
fonction.php
< ?php
?>
function Test()
{
; // bloc dinstructions de la fonction
}
20/24
PHP
Appel de la fonction
Test ()
Test () ;
Dclaration de la fonction
DbutFonction Test()
Bloc dinstructions
FinFonction
function Test()
{
; // bloc dinstructions
}
PHP
Appel de la fonction
PHP
Appel de la fonction
resultat Test ()
$resultat = Test () ;
Dclaration de la fonction
function Test ()
{
; // bloc dinstructions
return ( $r );
}
21/24
PHP
Appel de la fonction
8. LES TABLEAUX
Algorithmie
Tab { 1, 2 , 3 , 4}
PHP
$tab = array(1, 2, 3, 4);
22/24
23/24
24/24