Formation de programmation web ppt pour débutant
Formation de programmation web ppt pour débutant
...
Serveur web
Un serveur web est un hôte sur lequel fonctionne un serveur http (ou serveur web). Un serveur web héberge les ressources qu’il dessert.
Un navigateur web est un logiciel client HTTP conçu pour accéder aux ressources du web. Sa fonction de base est de permettre la consultation des documents HTML disponibles sur les serveurs HTTP. Le support d’autres types de ressource et d’autres protocoles de communication dépend du navigateur considéré.
Une page web (ou page) est un document destiné à être consulté avec un navigateur web. Une page web est toujours constituée d’une ressource centrale (généralement un document HTML) et d’éventuelles ressources liées automatiquement accessibles (par exemple, des images).
Serveur HTTP
o Il existe différents serveurs http
Apache : .apache.org
IIS : microsoft.com
Information sur le protocole http: www.w3.org/Protocoles/
o Échange d’information entre serveur et clients
Pour échanger des informations entre le serveur et, les clients on utilise le protocole HTTP (ensemble de règles de codes)
Nestcape Navigator, Microsoft Internet Explorer, lynx, iCab, …
...
EasyPHP
1ér package WAMP . (/LAMP)
(Windows, Appache, MySQL et PHP / Linux, Appache, MySQL et PHP)
Il s'agit d'une plateforme de développement Web, permettant de faire fonctionner localement des scripts PHP.
C’est un environnement comprenant :
Deux serveurs :
Un serveur web Apache
Un serveur de bases de données MySQL
Un interpréteur de script (PHP)
Une administration SQL phpMyAdmin.
... ...
PHP Hypertext Preprocessor: les bases
PHP signifiait à l’origine Personnal Home page.
PHP (officiellement "PHP: Hypertext Preprocessor")
langage de script (Interprété) qui est principalement utilisé pour être exécuté par un serveur HTTP, mais il peut fonctionner comme n'importe quel langage interprété en utilisant les scripts et son interpréteur sur un ordinateur
Sa syntaxe et sa construction ressemblent à celles des langages C++ et Perl, à la différence que le PHP peut être directement intégré dans du code HTML.
Extension d’un fichier PHP : .php
PHP Hypertext Preprocessor: les bases
La gratuité e t la disponibilité du code source ( PH P est distribué sous licence GNU GPL)
Une grande communauté de développeurs partageant des centaines de milliers d'exemples de script PHP
La simplicité d' écriture de scripts
La possibilité d'inclure le script PHP au sein d'une page HTML (contrairement aux scripts CGi , pour lesquels il faut écrire des lignes de code pour afficher chaque ligne en langage HTML)
La simplicité d‘interfaçage avec des bases de données (de nombreux SGBD sont supportés, m ais le plus utilisé avec ce langage est MySQL, un SGBD gratuit disponible sur de nombreuses plate formes : Unix, Linux, Windows, MacOs X, Solaris, etc...)
L'intégration au sein de nombreux serveurs web (Apache, Microsoft IIS, etc.).
HTML et PHP
Les instructions PHP peuvent être insérées dans les commandes HTML, ce qui facilite le développement des sites web dynamiques
Dans un fichier PHP, deux types de “zones” :
Zones délimitées par:
o ou /*Instruction PHP */ et ?>
o
Tout ce qui se trouve entre ces balaises sera considéré par le serveur Web comme étant des commandes PHP à exécuter
Génère du texte intégré au contenu HTML
Zones à l’extérieur de ces balises :
o Contient du texte et des balises HTML
o Directement recopié dans le contenu HTML généré
Exemple
Ici du texte HTML
php
echo 'et la suite affichée par PHP' ;
?>
Insertions de commentaire en php
Commentaire Unilingue (Comme en C) : // commentaire1
Commentaire Multilingue (C++): /* commentaire2 */
Commentaire à L’Unix (moins utilisé) #Commentaire3
... ...
Variables
Variables en PHP :
Le nom d’une variable commence par un $
Tout nom de variable doit commencer par une lettre (majuscule ou minuscule) ou un "_", mais jamais un chiffre.
Sensible à la casse. Les espaces sont interdis
Affectation comme en C :
$i = valeur ;
Les variables ne sont pas explicitement déclarées comme en C (une variable existe dès qu’une valeur lui est affectée)
Une variable peut contenir un nombre, une chaîne de caractères, un booléen (en réalité un entier comme en C) ou un tableau
Il est possible de convertir une variable en un type primitif grâce au cast(comme en C).
Exemple :
$str = ’’12’’; // $str vaut la chaîne ‘’12’’
$nbr = (int)$str; // $nbr vaut le nombre 12
Les variables référencées (&) ƒ$nomcomplet = "Paul".&$nom; en PHP4 ƒExemple :
$bar = &$foo; // Référence $foo avec $bar.
$bar = "Mon nom est Pierre"; // Modifie $bar...
echo
$foo; // $foo est aussi modifiée
echo $bar;
?>
Le type d’une variable est à liaison superficielle
$a = 100;
echo $a;
$a = "une chaine de caracteres";
echo $a;
?>
Portée des variables
La portée d'une variable dépend du contexte dans lequel la variable est définie.
Les constantes, les fonctions et classes sont partout visible donc accessible.
Variable globales
ƒ
Les variables globales ne peuvent être utilisées telles quelles au niveau du corps des fonctions.
ƒ
Une variable globale ne peut être au sein d’une fonction que si elle est précédée du mot réservé global.
Variable locales
ƒ
Elles sont définies au niveau du corps des fonctions
Toute variable utilisée dans une fonction est par définition, locale.
Par exemple :
$a = 1;
function test() {
echo $a; /* portée locale */
}
test();
?>
Le script n'affichera rien à l'écran car la fonction echo utilise la variable locale $a, et celle−ci n'a pas été assignée préalablement dans la fonction.
En PHP, une variable globale doit être déclarée à l'intérieur de chaque fonction afin de pouvoir être utilisée dans cette fonction. Par exemple:
$a = 1;
$b = 2;
function somme()
{
global $a, $b;
$b = $a + $b;
}
somme();
echo $b;
?>
Le script ci−dessus va afficher la valeur "3". En déclarant globales les variables $a et $b locales de la fonction somme(), toutes les références à ces variables concerneront les variables globales. Il n'y a aucune limite au nombre de variables globales qui peuvent être manipulées par une fonction.
Une autre caractéristique importante de la portée des variables est la notion de variable static . Une variable statique a une portée locale uniquement, mais elle ne perd pas sa valeur lorsque le script appelle la fonction. Prenons l'exemple suivant:
function test() {
$a = 0;
echo $a;
$a++;
}
?>
function test() {
static $a = 0;
echo $a;
$a++;
}
?>
Cette fonction est un peu inutile car à chaque fois qu'elle est appelée, elle initialise $a à 0 et affiche "0".
L'incrémentation de la variable ($a++) ne sert pas à grand chose, car dès que la fonction est terminée la variable disparaît.
Pour faire une fonction de comptage utile, c'est−à−dire qui ne perdra pas la trace du compteur, la variable $a est déclarée comme une variable statique (voir script au-dessus). L’appel de la fonction Test() affichera une valeur de
$a incrémentée de 1.
Conversion de type
La fonction gettype() permet de lire le type d’une variable.
On peut assigner les types suivants
o Array
o Class
o Double
o Integer
o String
La fonction settype() permet de changer le type d’une variable
Variables
$a = 3.14;
If(gettype($a)=="d
ouble")
settype($a,
"integer" );
?>
... ...
Variables, types et opérateurs
Quelques fonctions agissants sur les variables :
empty($var) : renvoie vrai si la variable est vide
isset($var) : renvoie vrai si la variable existe
unset($var) : détruit une variable
gettype($var) : retourne le type de la variable
settype($var, ’’type’’) : convertit la variable en type type (cast)
is_long(), is_double(), is_string(), is_array(), is_object(), is_bool(),
is_float(), is_numeric(), is_integer(), is_int()…
Une variable peut avoir pour identificateur la valeur d’une autre variable.
Syntaxe :
${$var} = valeur;
Exemple : $toto = ‘’foobar’’;
${$toto} = 2002;
echo $foobar; // la variable $foobar vaut 2002
Constantes
L’utilisateur peut définir des constantes dont la valeur est fixée une fois pour toute. Les constantes ne portent pas le symbole $ (dollars) en début d’identificateur et ne sont pas modifiables.
- Define("var",valeur) : définit la constante var (sans $) de valeur valeur
Exemple 1 :
- define("author", “Maalouf");
- echo author;
// affiche Maalouf
Exemple 2 :
- define("MY_YEAR",1980);
- echo MY_YEAR;
// affiche 1980
- Contrairement aux variables, les identificateurs de constantes (et aussi ceux de fonction) ne sont pas sensibles à la casse.
Chaînes de caractères (I)
Une variable chaîne de caractères n’est pas limitée en nombre de caractères. Elle est toujours délimitée par des simples quottes ou des doubles quottes.
Exemples :
$nom = ‘’Mohammed’’;
$prenom = ‘Ali’;
Les doubles quottes permettent l’évaluation des variables et caractères spéciaux contenus dans la chaîne (comme en C ou en Shell) alors que les simples ne le permettent pas.
Exemples :
echo ‘’Nom: $nom‘’; // affiche Nom: Etiévant
echo ’Nom: $nom‘;
// affiche Nom: $nom
Quelques caractères spéciaux : \n (nouvelle ligne), \r (retour à la ligne), \t (tabulation horizontale), \\ (antislash), \$ (caractère dollars), \’’ (double quotte) voir page tableau p96.
Exemple :
echo ‘’Hello Word !\n’’;
Chaînes de caractères (II)
Opérateur de concaténation de chaînes : . (point)
Exemple 1 :
$foo = ‘’Hello’’;
$bar = ‘’Word’’;
echo $foo.$bar;
Exemple 2 :
$name = ‘’Henry’’;
$whoiam = $name.‘’IV’’;
Exemple 3 :
$out = ‘Patati’;
$out .= ‘’ et patata…’’;
Affichage d’une chaîne avec echo:
- Exemples:
echo ‘Hello Word.’;
echo ‘’Hello ${name}\n’’;
echo ’’Nom : ’’, $name;
echo(‘’Bonjour’’);
Quelques fonctions agissants sur les chaines de carctères:
strlen($str) : retourne le nombre de caractères d’une chaîne
strtolower($str) : conversion en minuscules
strtoupper($str) : conversion en majuscules
trim($str) : suppression des espaces de début et de fin de chaîne
substr($str,$i,$j) : retourne une sous chaîne de $str de taille $j et débutant à la position $i
strnatcmp($str1,$str2) : comparaison de 2 chaînes
addslashes($str) : déspécialise les caractères spéciaux (‘, ‘’, \)
ord($char) : retourne la valeur ASCII du caractère $char
Les tableaux
Les tableau (array) représentent la structure de données la plus importante du langage PHP
Les tableaux sont en PHP d’une seule dimension
La seule manière de construire des tableaux multidimensionnel est d’utiliser des tableaux de pointeurs.
L’indexation d’un tableau commence toujours à l’indice 0 (zéro)
Deux types d’indexation:
indexage numérique
indexage associatif
// Création (facultatif)
$montab = array();
// Initialisations
$montab[0] = 1;
$montab[1] = 32.5;
$montab[2] = “Hello World”;
// Tableaux à plusieurs dimensions
$montab[3] = array();
$montab[3][0] = 1;
$montab[3][2] = “Hello World”;
// Initialisation sans connaître le numéro
$montab[] = 32; // Équivalent à $montab[4] = 32;
// Création et initalisation
$tableau2 = array(1,32.5,”Hello World”,32);
?>
Indexation numérique
Indexation expliciteƒ
$couleur[0] = "blanc", $couleur[1] = "bleu", $couleur[2] = "rouge";
ƒIndexation automatique
$couleur[] = "blanc", $couleur[] = "bleu", $couleur[] = "rouge";
ƒ Avec array sans indice
$couleur = array("blanc", "bleu", "rouge");
ƒAvec array + indice
$couleur = array(5=>"blanc", "bleu", "rouge");
Indexation associative
ƒ$personne = array("nom" =>« Moamed", "prenom"=>« Ali");
ƒ$couleur = array(1=>"blanc", 3=>"bleu", 5=>"rouge");
$couleur[] = "blanc"; $couleur[] = "bleu"; $couleur[] = "rouge";
echo "$couleur[2]";
$couleur2 = array("blanc", "bleu", "rouge");
echo "
$couleur2[2]";
$couleur3 = array(5=> "blanc", "bleu", "rouge");
echo "
$couleur3[6]";
$personne = array("nom"=> "NSIRI", "prenom"=> "Yann");
echo "
$personne[prenom]";
$couleur4 = array(1=> "blanc", 3=> "bleu", 5=> "rouge");
echo "
$couleur4[5]";
?>
Parcours d’un tableau : for
$couleur[] = "blanc"; $couleur[] = "bleu"; $couleur[] = "rouge";
for($index=0; $index
{
echo "
indic $index=> $couleur[$index]";
?>
... ...
La structure de parcours de tableau foreach
La forme foreach reste la plus adaptée pour passer en revue les éléments d’un tableau. Il y a deux syntaxes possibles :
Première syntaxe :
foreach($tableau as $value)
instructions;
?>
A chaque itération de la boucle, $valeur contient la valeur de l’élément du tableau $tableau
. Cette syntaxe permet de parcourir le tableau de début à la fin.
Deuxième syntaxe
foreach($tableau as $clé=>$value) instructions;
?>
Les formulaires
Utilisés pour la gestion interactive d’un site.
Sont à la base des pages web dynamiques
Mise en œuvre
Un formulaire XHTML est défini entre les balises et
Exemple:
Texte à l'intérieur du formulaire
method : Mode de transmission vers le serveur des informations saisies dans le formulaire.
action : le script qui va traiter le formulaire.
traitement.php: page réceptrice
Get : les données du formulaire sont transmises dans l’URL.
Post : les données du formulaire sont transmises dans le corps de la requête.
Les méthodes Get et Post
La transmission d’un formulaire s’effectue selon l’une des deux méthodes d’envoi : GET ou POST.
GET retrouve les variables au sein de la superglobale
$_GET
POST retrouve les variables au sein de la superglobale
$_POST.
Pour obtenir les valeurs des variables en utilisant les superglobale, procédez comme suit :
Syntaxe
$valarg =$_GET[‘nomarg’]; //GET
$valarg =$_POST[‘nomarg’]; //POST
L’élément input permet de créer les différents types d’éléments de formulaire:
"text", "password", "checkbox", "radio", "submit", "reset", "file" et "hidden
Les champs de saisie simple
Les champs de saisie de texte long