26
Développement d’applications WEB [email protected] 1

Loucif Redha développement d'applications web - php - my sql

Embed Size (px)

Citation preview

Page 1: Loucif Redha  développement d'applications web - php - my sql

1

Développement d’applications WEB

[email protected]

Page 2: Loucif Redha  développement d'applications web - php - my sql

2

• Serveur (HTTP)• HTML• PHP• MySQL• WAMP – LAMP

Page 3: Loucif Redha  développement d'applications web - php - my sql

3

Serveur

• Un système informatique permettant à un demandeur la consultation et l'utilisation directe d'un ou de plusieurs services.– DHCP – DNS– HTTP– MAIL (POP , SMTP)– FTP– …

Page 4: Loucif Redha  développement d'applications web - php - my sql

4

Langage HTML

– HyperText Markup Language.– Langage de description de pages adopté par la

communauté Internet.– Utilisation de balises :

• <A HREF="adresse_destination.html">Texte_ou_image_à_cliquer</A>

– Interpréter par le navigateur.– Ecrit avec un simple éditeur de texte, ou un

éditeur HTML.

Page 5: Loucif Redha  développement d'applications web - php - my sql

5

Exemple HTML

<html>

<head>

<title>1er Exemple</title>

</head>

<body>

<br> Exemple

<br> Texte Simple

<br> <b>Texte Gras</b>

<br> <a href="www.liens.com">Lien</a>

</body>

</html>

Page 6: Loucif Redha  développement d'applications web - php - my sql

6

Apache

• Serveur HTTP (fondation Apache)• Le serveur le plus répondu.• Disponible sous différents systèmes d’exploitations.• Support des modules supplémentaires.• Configuration facile (sur une hiérarchie de fichiers

texte indépendants).• Interprétation des langages de script (Php, Perl,..)• Négociation de communication.• Gestion des sessions des clients.

Page 7: Loucif Redha  développement d'applications web - php - my sql

7

PHP

• Un langage de programmation qui permet de crée des pages dynamique.

• Il s’exécute coté serveur.• Il s’intègre au pages HTML• Supporté par de nombreux

serveurs http.

Page 8: Loucif Redha  développement d'applications web - php - my sql

8

Exemple PHP<html> <head><title>Premier Script PHP</title></head> <body> <?php

echo "Mon premier script PHP! <br> ";

echo "Aujourd’hui " . date ("d / M / Y") . " <br> il est : " .date("h : i : s");

?> </body> </html>

Page 9: Loucif Redha  développement d'applications web - php - my sql

9

PHP

• Les commentaires• Manipulation des chaines de caractères.• Les constructeurs de contrôle et de boucles

(IF , FOR , Switch …) • Gestion des formulaires (GET, POST).• Gestion des cookies et des sessions.• Connexion aisée aux bases de données.

Page 10: Loucif Redha  développement d'applications web - php - my sql

10

Les variables• Les variables sont notées $nom• Les variables ont une portée définie par leur contexte– Une variable définie dans le contexte global n'est pas

visible dans une fonction– Une variable définie dans une fonction n'existe qu'à

l'intérieur de cette fonction• PHP définit des variables globales ($_SESSION,

$_GET,…) que nous verrons plus tard.

Page 11: Loucif Redha  développement d'applications web - php - my sql

11

Les variables

• Une variable peut être une chaîne, un tableau, un entier …

• Les chaînes :– $chaine = "Salem";– $chaine = 'Salem'.$chaine;– $chaine = "Salem $chaine";

• Les entiers :– $entier = 4;

Page 12: Loucif Redha  développement d'applications web - php - my sql

12

Les variables

• Les tableaux :– $tableau = array('couleur'=>'bleu', 'nom'=>'ciel');– $tableau['ciel']['couleur'] = 'bleu'.$chaine;

• Les tableaux sont TRES utilisés en PHP. Ils n'ont pas de dimension fixe, sont multidimensionnels… C'est une structure très souple.

Page 13: Loucif Redha  développement d'applications web - php - my sql

13

Variables globales• Toute variable passée dans l'URL est accessible via le tableau global $_GET

• Toute variable passée par un formulaire POST est accessible via le tableau global $_POST

• Il existe aussi $_SERVER, $_SESSION…

<?phpforeach($_SERVER as $key => $value){ echo "Clé: $key; Valeur: $value<br>\n";}

?>

Page 14: Loucif Redha  développement d'applications web - php - my sql

14

Expressions booléennes

Page 15: Loucif Redha  développement d'applications web - php - my sql

15

Les fonctions

• function test($argument1, $argument2){

echo 'test';return 1;

} • $boolean = test();• Les fonctions permettent de factoriser le code.

Il est très important d'apprendre à les utiliser.• PHP4 dispose également d'une couche objet.

Page 16: Loucif Redha  développement d'applications web - php - my sql

16

L’inclusion

• PHP permet d'inclure une page à l'intérieur d'une autre.

• Permet de factoriser le code en se construisant des bibliothèques de fonctions, des en-têtes et des pieds de page…

• include('../lib.php');• include('../entete.html');• Les inclusions permettent de simplifier la gestion

d'un site

Page 17: Loucif Redha  développement d'applications web - php - my sql

17

Les sessions

• La session permet de faire persister des données relatives à un visiteur côté serveur.

• C'est ce qu'on utilise par exemple pour un panier, un site avec login…

• session_start()• le tableau global $_SESSION

Page 18: Loucif Redha  développement d'applications web - php - my sql

18

Les formulaire• Un moyen pour les visiteurs pour entres leurs

informations et permètre l’interaction avec le site.

– Input (Texte).

– Zone de texte.

Sur 1 ou plusieurs lignes.

– Boutton

– Case a cocher (Radio Button)

– Liste déroulante (Select)

Page 19: Loucif Redha  développement d'applications web - php - my sql

19

Les formulaires• Les méthodes "post" et "get" sont utilisées pour envoyer les données des

formulaires aux pages suivantes pour traitements.• get : les données transiteront par l'URL. On pourra les récupérer grâce au

tableau $_GET.• post : les données ne transiteront pas par l'URL, l'utilisateur ne les verra

donc pas passer dans la barre d'adresse. (tableau $_POST)

<form method="post" ou "get" action="cible.php"> <p> Les éléments de notre formulaire.</p> </form>

Page 20: Loucif Redha  développement d'applications web - php - my sql

20

• isset($var)– renvoie TRUE si la variable $var est définie, FALSE

sinon

• htmlspecialchars($chaine)– remplace tous ces caractères par leur équivalent

dans la chaîne string

Page 21: Loucif Redha  développement d'applications web - php - my sql

21

PHP

• Blogs• Systèmes de Gestion de contenus (CMS)• Forum• Application Gestion (commercial – personnel –

scolarité – bibliothèque …)• Exemple de : Facebook – Wikipedia …

Page 22: Loucif Redha  développement d'applications web - php - my sql

22

MySQL

• MySQL est un système de gestion de bases de données relationnelles. (SGBDR)

• Le SQL dans “MySQL” signifie “Structured Query Language” : le langage standard pour les traitements de bases de données.

• Dispose d’un grand nombre d’API (s’intègre avec C ,C++ , Java, Perl, PHP, …).

Page 23: Loucif Redha  développement d'applications web - php - my sql

23

• Apres l’installation, un utilisateur Root est crée, il détient tous les pouvoirs.

• Des commandes : • mysql>CREATE DATABASE BD_EXEMPLE• mysql>CONNECT BD_EXEMPLE• mysql>CREAT TABLE Livre (id_liv int unsigned

not null auto incrémente, titre VARCHAR(200), auteur VARCHAR(200) ) ;

MySQL

Page 24: Loucif Redha  développement d'applications web - php - my sql

24

MySQL

• Syntaxe de la commande SELECT : SELECT [champ1,champ2, ... | * ] FROM [table 1, table 2, ...] WHERE [condition or, and ou like]

SELECT * FROM Employees WHERE nomEmployee LIKE ‘B%';

Page 25: Loucif Redha  développement d'applications web - php - my sql

25

WAMP – LAMP

• WAMP : Windows Apache MySQL PHP• LAMP : Linux Apache MySQL PHP

Page 26: Loucif Redha  développement d'applications web - php - my sql

26

Easy PHP

• Apache – PHP – MySQL (PHP MyAdmin)• EasyPHP-DevServer-14.1VC9• Local WEB• 127.0.0.1:80 • Des petits programmes appelés «daemons» sont

installés sur le serveur et écoutent en permanent sur un port spécifique. (La combinaison « adresse IP:numéro de port » constitue ce que l'on appelle une « socket » (qui veut dire à peu près « connecteur » en anglais).