Vous êtes sur la page 1sur 16

Master spécialisé_Sciences géomatiques apliquées à la gestion des

ressources naturelles et environnementales

Le langage php
M o d u l e d e P r o g r a m m a t i o n

Présenté par :
Validé par :
Tilila Ait Jeddi
Ilham Zehouani M. Essady
Oumaima Tounf

A n n é e U n i v e r s i t a i r e : 2 0 1 8 / 2 0 1 9
PLAN
 Gestion des formulaires

 Date et heure

 MySQL et PHP

 Système de fichiers

2
GESTION DES
FORMULAIRES

3
RÉCUPÉRATION

Récupération par tableau Récupération directe


• Chaque champ de formulaire en PHP est défini par • La fonction «import_request_variables» permet de
un nom et une valeur. réserver une valeur à off sans modification pour
diverses raisons.
• Dans un script, PHP va récupérer ces noms et ces
valeurs dans des tableaux spéciaux: superglobaux. • Le premier paramètre est le type de variables
qu'on souhaite récupérer (POST, GET, Cookie)
• Pour la méthode GET, le tableau est $_GET.
• Le second paramètre est le préfixe qu'on souhaite
• Pour la méthode POST le tableau est $_POST. donner au nom des variables qu'on va récupérer
<form action="foo.php" method="post">
Name: <input type="text" name="username"><br> <?php
Email: <input type="text" name="email"><br> import_request_variables("P","Post_");
<input type="submit" name="submit" value="Submit echo $Post_username;
me!"> 4
?>
</form>
DATE ET HEURE

Localisation Récupération de la date Récupération de la date locale


strftime
Le plus simple est d'utiliser la fonction «
Le format de date et d'heure (format et date » qui retourne l'heure locale sous Pour formater le résultat en local il faut
langue) est dépendant de forme d'une chaîne de caractères à utiliser la fonction « strftime » qui tient
l'environnement d'exécution du code préciser en premier paramètre. En second compte de la langue.
PHP. paramètre on peut préciser un «
timestamp » si on ne souhaite pas l'heure
actuelle.

Retour par tableau getdate Récupération de l’heure Récupération n’importe


localtime quelle date
La fonction « getdate » permet aussi de Pour l'heure on peut utiliser les fonctions On utilise la fonction « strtotime ». Elle
récupérer la date et l'heure actuels (avec « localtime » qui peut aussi prendre un prend comme paramètre une chaîne de
éventuellement un timestamp en paramètre timestamp et qui retourne un texte en anglais qu'elle essaie de
paramètre) mais sous forme de tableau tableau indexé selon les valeurs convertir en timestamp
indexé selon les valeurs

5
MYSQL
ET PHP

6
Connexion à une base de données

Connexion au Choix d'une base Fermeture d'une Séquence complète


serveur connexion pour une base

On utilise la fonction On choisit une base On ferme une • mysql_connect($


mysql_connect(). de données par connexion à MySQL b_host, $b_user,
défaut avec la avec la fonction
$b_pass) or
fonction mysql_close().
Cette fonction prend mysql_select_db(). die("erreur de
au minimum trois Elle prend au Cependant dans le connexion à
paramètres : minimum un cas de connexion MySQL");
paramètre: non persistantes
• Le serveur • le nom de la (voir à ce point) cette • mysql_select_db(
base. fonction n'est pas
(hostname) $b_base) or
Le second obligatoire car PHP
• l'utilisateur paramètre optionnel ferme die("erreur à la
• son mot de passe. est: automatiquement les selection de
• une ressource connexions à la fin $b_base);
retournée par d'un script.
mysql_connect • mysql_close();

7
Les requêtes Exécuter une requête
On exécute une requête SQL avec la
fonction mysql_query(). Cette
fonction prend au moins un paramètre:
une requête SQL sous forme dechaîne.

Nombre de lignes affectées


Dans le cas d'un DELETE, INSERT,
REPLACE ou UPDATE, on peut
connaître le nombre de lignes
affectées (modifiées) par la requête à
01
l'aide de la fonction
mysql_affected_rows().

04
Nombre de lignes retournées
Dans le cas d'un SELECT, le nombre
d'enregistrements (lignes) retourné
est obtenu avec la fonction
mysql_num_rows()..
Récupérer les résultats
La fonction la plus sympathique pour
03
récupérer les enregistrements après
l'exécution d'une sélection
est mysql_fetch_array()..

02
Insertion avec auto-incrément
L'identifiant unique d'une table est
souvent un entier auto-incrémenté.
05
L'avantage est qu'il n'y a pas
besoin de gérer cet identifiant, c'est 8
MySQL qui le détermine tout seul.
En cas d'erreur lors Récupération
d'une manipulation
sur MySQL, on peut
récupérer le numéro
des erreurs
de l'erreur MySQL par
la fonction
mysql_errno().
De même on peut
récupérer le message
d'erreur par la
fonction
mysql_error().
LE SYSTÈME DE
FICHIERS.

10
TRAVAIL SUR LES FICHIERS
01
Ouverture
Nom du fichier
Mode
avec son chemin
La fonction fopen() permet d’ouverture
1
d'ouvrir
Q1 20YY ou de créer un fichier
selon divers modes

r r+ w

● lecture seule, en ● lecture/écriture, en ● écriture seule , taille du


début de fichier début de fichier fichier à 0 (ancien contenu
effacé), créé s'il n'existe pas
● lecture/écriture, taille du ● écriture seule, en fin de ● lecture/écriture, en fin de
fichier à 0, créé s'il fichier, créé s'il n'existe fichier, créé s'il n'existe pas.
n'existe pas pas

w+ a a+ 11
FGETS() FREAD() FSCANF() FGETC() FGETSS()
lire une ligne d'un
fichier en mode texte
La fonction fscanf() lit des
lire un fichier en mode
lit un seul la ligne retournée
longueur de texte en binaire lignes d'un fichier en
octet qui est par $file=fopen('monimage. fonction d'un formatage caractère dans le est débarrassée
défaut 1024 gif','rb'); particulier. fichier de ses
ATTENTION : fgets() $img=fread($file, $file=fopen('users.txt','r') éventuelles
ne retourne pas $filesize('nomimage.gif') ; balises PHP ou
FALSE à la fin du ); while($ligne=fscanf($file HTML
fichier. ,"%s\t%s\t%s\n")) {
fclose($file);
$ligne=fgets($file); echo $ligne;
}

RENVOYER UN FICHIER PAR


FGETCSV()
Lecture
LA SORTIE STANDARD lire un fichier de type
CSV
readfile() un nom de fichier et renvoie son
contenu par la sortie standard la longueur maximale
d'une ligne du fichier
readgzfile() le fichier est au format
le séparateur, qui est
compressé gzip (zlib) la virgule par défaut 12
ECRITURE

fwrite() fputs()
100%

• Elles écrivent une chaîne dans un fichier


• On peut limiter la longueur de la chaîne en
troisième paramètre mais par défaut toute la
chaîne est écrite.
• La valeur retournée est le nombre d'octets
écrits,ou FALSE en cas d'erreur.

• $file=fopen('monfic.txt','a);
$ret=fwrite($file,'Une ligne dans En cas de travail sur un fichier
mon fichier'); binaire, il ne faut pas oublier sous
fclose($file); Windows de rajouter l'option 'b'
13
DEPLACEMENT
Calcul à partir de la fin du fichier.
Position finale : Fin+Offset SEEK_END

renvoie la position actuelle du


Calcul à partir de l'emplacement SEEK_CUR pointeur dans le fichier
actuel. Position finale : Actuelle+offset

SEEK_SET
Calcul à partir du début du fichier.
Position finale : Début+offse

rewind() de retourner au début du


fichier. Elle retourne TRUE
en cas de réussite, FALSE
sinon. 14
FIN DE FICHIER
La fonction feof() indique si on
est à la fin du fichier ou non.
Elle retourne TRUE si la fin de
fichier a été atteinte, FALSE
sinon.
$fd = fopen ("/tmp/inputfile.txt", "r"); FERMETURE
while (!feof ($fd)) {
$buffer = fgets($fd, 4096); On ferme un fichier avec la
echo $buffer; fonction fclose().
} Elle retourne TRUE en cas de
fclose ($fd); réussite, FALSE sinon.
MERCI POUR
VOTRE ATTENTION