25/05/2019
formulaires
– Retourne des informations saisies par un utilisateur vers une
application serveur
– Connaissance de quelques balises HTML indispensables :
• Structure : <form> ……………. </form>
• Champ de saisie de text en ligne :
<input type = "text" name ="nom_du_champ" value="chaîne">
• Boutons d’envoi et d’effacement :
<input type=" submit " value = "Envoyer">
<input type = "reset" name ="efface" value = "Effacer">PLAY
• Case à cocher et bouton radio :
<input type = "checkbox" name ="case1" value="valeur_case">
<input type = "radio" name ="radio1" value ="valeur_radio">
Isset/empty
formulaires
• Liste de sélection avec options à choix unique :
<select name ="select" size="1">
<option value = "un"> choix </option>
<option value ="deux"> choix2 </option>
</select>
• Liste de sélection avec options à choix multiples :
PLAY
<select name ="select" size = "1" multiple>
<option value = "un"> choix1 </option>
<option value = "deux"> choix2 </option>
</select>
1
25/05/2019
formulaires
PLAY
formulaires
Méthodes d’envoi:
place les informations d'un formulaire directement à la suite de
l'adresse URL de la page appelée.
http://www.site.com/cible.php?champ=valeur&champ2=
valeur
1 Données
visibles 2 longueur
totale est
PLAY
dans la limitée à
barre 255
d’adresse
2
25/05/2019
formulaires
Méthodes d’envoi:
La méthode POST regroupe les
informations dans l'entête d'une requête
HTTP
PLAY des
Assure une confidentialité efficace
données
formulaires
Récupération des paramètres
– (depuis php3): Les tableaux associatifs:
– $HTTP_GET _VARS et $HTTP_POST _VARS contiennent toutes
les variables envoyées par un formulaire
PLAY
– Les tableaux associatifs $_GET et $_POST
3
25/05/2019
Fonctions
PLAY
Introduction
PLAY
4
25/05/2019
Inclusion des fichiers
•
PLAY
Les fonctions(1)
Déclaration & appel
PLAY
5
25/05/2019
Les fonctions
nombre d’arguments inconnu
func_num_args() : fournit le nombre d’arguments qui ont
été passés lors de l’appel de la fonction
func_get_arg($i) : retourne la valeur de la variable située à
la position $i dans la liste des arguments passés en PLAY
paramètres.
Ces arguments sont numérotés à partir de 0
Exemple?
Les fonctions
nombre d’arguments inconnu
PLAY
6
25/05/2019
Les fonctions(1)
Passage de paramètre par référence
PLAY
Les fonctions
Récursivité
$str = "Hello World !";
reverse_r($str);
function reverse_r($str)
{
if(strlen($str) > 0)
reverse_r(substr($str, 1)); PLAY
echo substr($str, 0, 1);
return;
}
7
25/05/2019
Les fonctions
Appel dynamique
– Exécuter une fonction dont le nom n’est pas forcément connu à
l’avance par le programmeur du script
– L’appel dynamique d’une fonction s’effectue en suivant le nom
d’une variable contenant le nom de la fonction par des parenthèses
PLAY
Fonctions PHP: Complément
• Les dates et les heures
– Les fonctions de date et d’heure
true | false = checkdate(mois, jour, année);
vérifie la validité d'une date.
$chaine = date(format [, nombre]);
retourne une chaîne de caractères date/heure selon le format spécifié et représentant la date
courante par défaut.
$tableau = getdate([nombre]);
retourne les éléments de date et d'heure dans un tableau associatif. PLAY
$tableau = gettimeofday();
retourne l'heure courante dans un tableau associatif.
$chaine = gmdate(format [, nombre]);
retourne une chaîne de caractères date/heure GMT/CUT selon le format spécifié et
représentant la date courante par défaut.
$nombre = gmmktime(heure, minute, seconde, mois, jour, année [, 1/0]);
retourne l'instant UNIX d'une date GMT spécifiée et avec éventuellement une heure d'hiver
8
25/05/2019
Fonctions PHP: Complément
– Les fonctions de date et d’heure
$chaine = gmstrftime(format [, nombre]);
formate une date/heure GMT/CUT en fonction des paramétrages locaux définis par setlocale.
$tableau = localtime([nombre][, tab_associatif]);
retourne l'heure locale dans un tableau indicé par défaut ou associatif (1)
$chaine = microtime();
retourne l'instant UNIX courant en secondes et microsecondes (1 janvier 1970 à 0H00)
$nombre = mktime(heure, minute, seconde, mois, jour, année [, 1/0]); PLAY
retourne l'instant UNIX d'une date spécifiée et avec éventuellement une heure d'hiver (1)
$chaine = strftime(format [, instant]);
formate une date/heure locale avec les options locales
$nombre = time();
retourne l'instant UNIX courant
Fonctions PHP: Complément
– Les formats de date et d'heure
a représente am (matin) ou pm (après-midi).
A représente AM (matin) ou PM (après-midi).
B représente une heure Internet Swatch.
d représente le jour du mois sur deux chiffres allant de 01 à 31.
D représente le jour de la semaine en trois lettres et en anglais (Sun, ..., Sat).
F représente le mois complet en anglais (January, ..., December).
g représente une heure au format 12 heures allant de 1 à 12.
G représente une heure au format 24 heures allant de 1 à 24.
h représente une heure au format 12 heures avec un zéro de complément allant de 00 à
11.
H représente une heure au format 24 heures allant de 00 à 23.
i représente les minutes allant de 00 à 59.
I PLAY
est égal à 1 si l'heure d'été est activée ou 0 pour l'heure d'hiver.
j représente le jour du mois allant de 1 à 31.
l représente le jour de la semaine complet et en anglais (Sunday, ..., Saturday).
L est égal à 1 si l'année est bissextile, sinon 0.
m représente un mois allant de 01 à 12.
M représente un mois en trois lettres et en anglais (Jan, ..., Dec).
9
25/05/2019
Fonctions PHP: Complément
– Les formats de date et d'heur
n représente un mois allant de 1 à 12.
O représente la différence d'heures avec l'heure de Greenwich (+0100).
r représente un format de date conforme au RFC 822 (Mon, 25 Mar 2002 05:08:26
+0100).
s représente les secondes allant de 00 à 59.
S représente le suffixe ordinal d'un nombre en anglais et sur deux lettres th ou nd.
t représente le nombre de jours dans le mois (28, 29, 30 ou 31).
T représente le fuseau horaire.
U représente les secondes depuis une époque.
w représente le jour de la semaine allant de 0 (Dimanche) à 6 (Samedi).
Y représente une année sur quatre chiffres (2002).
y représente une année sur 2 chiffres (02). PLAY
z représente le jour de l'année allant de 0 à 365.
Z représente le décalage horaire en secondes.
Manipulation des fichiers
PLAY
10
25/05/2019
Gestion des fichiers
Ouverture
entier fopen(chaine fichier, chaine mode);
r
w
a
PLAY +
– lorsque le mode est suivie du caractère
celui-ci peut être lu et écrit
– mode [b] : traitement de façon binaire.
Gestion des fichiers
Ouverture
Exemple:
$fp = fopen("fichier.txt","r"); //lecture
$fp = fopen("fichier.txt","w"); //écriture depuis début du
fichier
– De plus, la fonction fopen permet d'ouvrir des fichiers présents
sur le web grâce à leur URL.
• Exemple : un script permettant de récupérer le contenu d'une page
d'un site web: PLAY
<?
$fp = fopen("http://www.uae.ma","r"); //lecture du fichier
while (!feof($fp)) { //on parcourt toutes les lignes
$page .= fgets($fp, 4096); // lecture du contenu de la
ligne}
?>
11
25/05/2019
Gestion des fichiers
Ouverture
• Ouverture de fichiers
<?
if (!$fp = fopen(”fichier.txt","r")) {
echo "Echec de l'ouverture du fichier";
exit;}
else {// votre code;}
?>
PLAY
– Un fichier ouvert avec la fonction fopen() doit être fermé, à la fin
de son utilisation, par la fonction fclose() en lui passant en
paramètre l'entier retourné par la fonction fopen()
Gestion des fichiers
W/R
• fputs() (ou l’alias fwrite() ) : Elle renvoie 0 en cas d'échec.
– booléen fputs(entier Etat_du_fichier, chaine Sortie);
• Fgets: récupérer une ligne du fichier.
Retour 0 en cas d'échec, 1 dans le cas contraire
– fgets(entier Etat_du_fichier, entier Longueur);
PLAY
» Longueur = nombre de caractères maximum que la
fonction est sensée récupérer sur la ligne
» Pour récupérer l'intégralité du contenu d'un fichier, il
faut insérer la fonction fgets() dans une boucle while.
On utilise la fonction feof(), fonction testant la fin du
fichier.
12
25/05/2019
Gestion des fichiers
W/R
• Lecture et écriture de fichiers
<?
if (!$fp = fopen("fichier.txt","r"))
{echo "Echec de l'ouverture du fichier";}
else { $Fichier="";
while(!feof($fp)) {
// On récupère une ligne
$Ligne = fgets($fp,255);
// On affiche la ligne
echo $Ligne; PLAY
// On stocke l'ensemble des lignes dans une variable
$Fichier .= $Ligne. "<BR>";
}
fclose($fp); // On ferme le fichier
}
?>
Gestion des fichiers
W/R
– Pour stocker des informations dans le fichier, il faut dans un
premier temps ouvrir le fichier en écriture en le créant s’il
n'existe pas
• Deux choix : le mode 'w' et le mode 'a'.
<?
$nom="admin"; $email=«
[email protected]";
$fp = fopen("fichier.txt","a"); // ouverture du fichier
en écriture
fputs($fp, "\n"); // on va a la ligne PLAY
fputs($fp, $nom."|".$email); // on écrit le nom et
email dans le fichier
fclose($fp);
?>
13