Vous êtes sur la page 1sur 21

EMSI RABAT – Ingénierie Informatique & Réseaux

EMSI 3 – 3°IIR 3 – INFORMATIQUE

Programmation en Langage Script et Developpement Web


*===> Études Avancée en Langage Script PHP & DevWEB & JavaScript

Professeurs : Mr. Yves EBOBISSE


And Others

Étudiants : Ibrahim MANNANE


Youssef MAHTAT

Programmation Avancée
en Langage Script

&

Developpement Web
_

Étude de
la Programmation
en

Langage PHP
&
DevWEB
&
JavaScript
Notes de Cours
en
Informatique :

[ Complited MiniSheetCheat ]

Révision du cours
(DevWEB & ProgPHP & JavaScript & POO)

Étude de
la Programmation
en
Langage PHP
&
DevWEB
&
JavaScript
(Selon le cours du Prof. Mr. Yves EBOBISSE)
→ Notes et Révisions du Cours de la Partie 1 « DevWEB - HTML » :

(voir : W3Schools - HTML )

**→ Structure d’une page HTML :

<HTML> //Le début d’une page HTML ;

<HEAD> // Le début de la zone d'en-tête (Les informations destinées au browser) ;


<TITLE> " Titre de la page " </TITLE>
</HEAD> // Fin de la zone d'en-tête.

<BODY>

Corps de la page ;


</ BODY>

</HTML> // Fin d’une page HTML.

 RmQ :

- Chaque balise de début d'une action, soit <>, correspond à une balise de
fin d'une action </>
- Langage HTML n’est pas sensible à la casse
**→ Quelques Balises de base :

Type de Balise : Balise :


Bloc <div> </div> : (bloock-level)
<span> </span> : (inline)

Mise en valeur <em> </em>


<mark> </mark> // marquer un texte
<strong> </strong>
<b> </b>

Image <img src="source" width="largeur" height=" hauteur">

Lien Pour charger le lien dans le même onglet :


<a href="lien">text</a>

Pour charger le lien vers un nouvel onglet :


<a target="blank" href="lien">text</a>

Paragraphe <p> </p>


Titre (en-tête) <h1> </h1>
<h2> </h2>


<h6> </h6>
Retour à la ligne </br>
Commentaire <!-- comm -->
Table <table>
<tr> : //Ligne
<th></th> // en-tête;
</tr> // Fin de ligne (ligne1)
<tr>
<td></td> // colonne ;
</tr>
</table>

Type d’encodage // à mettre dans le bloc <HEAD> (comme <title>)


<meta charset="encodage">
// Avec encodage : Le standard d’encodage voulu
// Par Exemple , pour l’UNICODE :
<meta charset="utf-8">

<ul>
Liste non-Ordonnée <li> element_1 </li>


<li> element_n </li>
</ul>

<ol>
Liste Ordonnée <li> element_1 </li>


<li> element_n </li>
</ol>
**→ Les formulaires :

→ Syntaxe Générale :
<form [Options1]>

// Les éléments du formulaire

</form>

Avec [Options1] :

 action="action_page.php" : page de réception ;


 method="get/post" : méthode de transmission des
information ;
 get : les informations sont visibles dans le champ d'adresse de
page ( méthode par défaut)
 post : les informations ne sont pas visibles dans le champ
d'adresse de page , post n'a pas de limites de taille, et peut être
utilisé pour envoyer de grandes quantités de données.

→ Eléments (de base) :


 <input type="text" [Options2]> : Champ de saisie de texte (une ligne)

 <input type="email" [Options2]> : Champ de saisie de texte (un email : xxxx@yyy.zzz)

 <input type="password" [Options2]> : Champ de saisie de texte (mot de passe *******)

 <input type="radio" [Options2]> : Bouton radio (sélection d’un choix )

 <input type="submit" [Options2]> : Bouton pour valider le formulaire

 <SELECT [Options2]> : Liste déroulante

<OPTION [Options2]> : option 1

<OPTION [Options2]> : option 2

……

</SELECT>

 <input type="reset" [Options2]> : Bouton pour vider tous les champs


Autres types :

 <input type="date" [Options2]> : Sélectionner la date

 <button type="button"></button> : bouton

 <input type="number min="0" max="100" step="10" value="30"> :Champ de saisie


numérique .

Avec [ Option2]:

Name="" : nom d’élément

Type ="" : type d’élément

Value ="" : valeur par défaut


→ Notes et Révisions du Cours de la Partie 2 « DevWEB - PHP » :
(voir : W3Schools - PHP )

**→ Syntaxe de Base PHP :


RmQ :
Le Code PHP doit toujours être dans la une page ".php" dans la Balise PHP définie comme
suite :
< ?php

//code php ;

?>

 Exemple :
<html>
<body>

<?php
echo "Hello World!";
?>

</body>
</html>

 Les Commentaires :

// ou # commentaire (une ligne);

Ou bien :

/*
… commentaire (plusieurs lignes);
*/

**→ Les Variables :


ère
La Première utilisation de la variable en PHP est la déclaration de cette dernière, alors la 1 utilisation de
la variable doit être son initialisation :

$nom_variable = valeur_initialisation ;
// exemples :
$txt = "Bonjour";
$x = 1;

**→ Les Opérateurs et Opérations :

 RmQ :
Le langage PHP est un langage qui s’inspire du langage C (il est même considéré de la famille C),
or il reprend les opérations et les opérateurs du langage C avec la même syntaxe et utilisable pour
les mêmes circonstances.
**→ Affichage :

 Syntaxe :

echo String ;

// exemple :
echo "Bonjour";
echo $var ;
echo "Bonjour".$var (le point ". " fait mine de Concaténation)

 RmQ :

Pour interpréter du HTML dans un segment PHP, il faut impérativement qu’il soit dans
la fonction (méthode) echo , c’est à dire si on veut afficher une (ou sur une) balise il faut
l’intégrer dans echo .

**→ Les Conditions :

 Syntaxes :

Condition (if … else) :


if ( condition1 )
{
//traitement;
}
elseif(condition2)
{
//traitement ;
}
Else
{
//Traitemrnt ;
}

Commutateur (switch):
switch ($var)
{
case cas1:
traitement1;
break;
case cas2:
traitement2;
break;
...
default:
// si $var est différente de tous les cas
}
**→ Les Boucles :

 Syntaxes :

 Boucle while :
while (condition est vraie)
{
//traitement;
}

 Boucle do … while :
do
{
//Traitement ;
}while (condition est vraie) ;

 Boucle for
for(initialisation ; condition ; pas)
{
//traitement ;
}

**→ Les Fonctions :

 Syntaxes :

function nom_fonction(liste_Arguments)
{
// codes de traitement;
[return valeur_de_retour ;]
}

 Exemple :

function print_bonjour()
{
echo "Bonjour";
}

**→ Quelques Fonctions Prédéfinie :


 Redirection : header ("LOCATION : [Lien]") ;
Avec [lien] : https://lienWeb.blaBla ou adresse_fichier
 Date : date("d-m-Y"); // dd/mm/YYYY
 Heure : date("H:i"); // HH :mm
 Tri : sort($var); // Avec $var : liste,Tableau ou array
**→ Récupération les données d’un formulaire :

// Exemple :
Soit le formulaire suivant :

<html>
<body>

<form action="rec.php" method="post">


Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>

On récupère les infos dans la page rec.php ;

<html>
<?php
$nom = $_POST["nom"] ;
$email = $_POST["email"] ;
?>
<body>
<?php
echo "Nom :". $nom . "<br> e-mail :". $email ;
?>
</body>
</html>
**→ Manipulation des données d’une base de données SQL :

 Etablissement de la Connexion :

<?php

$server = "localhost";
$user = "username";
$password = "password";
$DataBase = "nom_dataBase";

// Connexion á la base de données :


$conn = mysqli_connect($server, $user,$password,$DataBase);

?>

 Requête :

$req = "SELECT id, firstname, lastname FROM MyGuests";


$result = $ mysqli_query($conn,$req); // exécution de la requête req
$row=mysqli_fetch_array($result,[ resulttype]); //récupérer les résultats
// ou bien :
$row=$resultat->fetch_assoc(); // récupère une ligne

Et pour récupérer une colonne : $row["nom_column"]

 Avec Resulttype :
o MYSQLI_NUM(tableau numérique)
o MYSQLI_ASSOC(tableau associatif)
o MYSQLI_BOTH(les deux)

 Fermer la connexion :

mysqli_close ($conn);

 Autres fonctions :

mysqli_fetch_row() : retourne une entrée sous forme d’un tableau


mysqli_num_rows() : retourne le nombre de lignes retournées
mysqli_connect_errno() : retourne le code d’erreur en cas d’erreur de connexion
**→ Manipulation des données d’un Fichier (compact) avec PHP :

 Ouverture du Fichier :

<?php

$chemin = "chemin_Absolu/nom_fichier.extension" ;
// si le fichier est dans le dossier courant du projet :
$chemin = "nom_fichier.extension" ;

$mode = "a+" ; // mode d’ouvrir du fichier

// ouvrir un fichier :
$fich = fopen($chemin, $mode);

// $fich représentera le fichier dans le PRG


?>

Avec :
* Modes d’ouverture d’un fichier
r Ouvre le fichier en lecture seule.

r+ Ouvre le fichier en lecture et écriture.

Ouvre le fichier en écriture seule. Mais il y a un avantage : si le fichier n'existe pas, il est
a
automatiquement créé.
Ouvre le fichier en lecture et écriture. Si le fichier & n'existe pas, il est créé
a+ automatiquement. Attention : le répertoire doit avoir un CHMOD à 777 dans ce cas ! À
noter que si le fichier existe déjà, le texte sera rajouté à la fin.

 Fermeture dans un Fichier :


fclose($fich);

 Insérer dans un Fichier :


fputs($fich,$str);

Avec $str est l’information à ajouter dans le fichier ;


A noté que pour insérer le fichier doit être ouvert dans un mode qui
permet l’insertion ;

 Lecture d’un un Fichier :


$ligne = fgets($fich) ;

Avec $ligne est l’information lue du fichier, et elle va contenir un ligne


à partie de la position du curseur ;
A noté que pour lire du fichier doit être ouvert dans un mode qui permet
la lecture ;

 Autres fct :
 feof($fich) : Si le curseur se trouve à la fin du fichier cette fct retournera false ;
 explode($delimiter,$str) : retourne un tableau de String, chacune d'elle
étant une sous-chaîne du paramètre $str extraite en utilisant le séparateur $delimiter.
**→ PHP – Programmation Orienté Objet (POO in DevWEB) :

 Définition d’une Classe :

class nom_classe
{
mode $var;
mode function nom_fonction(liste_var){}

function __construct(liste des variables)


//constructeur
{

}

function __destruct(liste des variables)


//destructeur
{

}


}

 Avec Mode :
o Public
o Private
o protected

 Manipulation d’un objet :

 Création :
$nom_objet =new nom_classe(liste_args);

 Accès aux propriétés :


$nom_objet ->nom_attribut;

 Accès aux méthodes :


$nom_objet->nomMéthode(liste_args);
**→ PHP – CONNEXION & SESSION :

 Ouverture d’une SESSION :

session_start();

// Si on l’ouvre pour la 1ère fois :

$_SESSION["champ1"] = val_champ1 ;
$_SESSION["champ2"] = val_champ2 ;
……

Avec champ1, champ2, … : Les informations à stocker


après avoir être connectées.

// Si on ouvre une fois la session dans une autre page ,


// On peut récupérer les champs :

$variable_X = $_SESSION["champX"] ;
….

RmQ :

A noter que la fonction session_start() doit être appelée une seule


fois dans un même fichier .
→ Notes et Révisions du Cours de la Partie 1 « DevWEB - JavaScript » :
(Voir : W3Schools - JavaScript )
RmQ :
JavaScript n’est pas le langage JAVA (il n’a rien avoir avec JAVA).
JavaScript n’est plus considérer comme un langage Script seulement, car il est multi-paradigmes.

**→ Syntaxe de Base JavaScript :


RmQ :
Le Code JavaScript doit toujours être dans la Balise SCRIPT définie comme suite :
<script>
//code JavaScript ;
</script>
 Exemple :
<html>
<body>
<script>

alert('Hello, World!');
</script>
</body>
</html>

 Les Commentaires :

// commentaire (une ligne);

Ou bien :

/*
… commentaire (plusieurs lignes);
*/

**→ Les Variables :

On déclare une variable en JavaScript par :

var nom_variable;
// puis :
nom_variable = valeur_initialisation ;
// ou bien :
var nom_variable = valeur_initialisation ;

// exemples :
var x, y, z;
x = 5;
y = 6;
z = x + y;
**→ Les Opérateurs et Opérations :

 RmQ :
Le langage JavaScript est un langage (comme le PHP) qui s’inspire du
langage C (il est même considéré de la famille C) , or il reprend les
opérations et les opérateurs du langage C avec la même syntaxe et utilisable
pour les même circonstances .

**→ Affichage :

 Syntaxe :

alert("String") ;
// ou :
alert([quelque chose à afficher]) ;
// Avec [quelque chose à afficher] :
 Variable ;
 Expression :
 Etc … ;

// exemple :
alert("Bonjour") ;
alert(variable) ;
var chaine = "Developpeur";
alert("Bonjour " + chaine ); //(le symbole "+ " fait mine de Concaténation)

- RmQ : La méthode alert() affiche dans une boîte de dialogue .

 RmQ :

Pour interpréter du HTML dans un segment JavaScript, il faut impérativement qu’il soit
dans les fonctions (méthodes) :
document.write("String"); // Supprimer tous les HTML existants avant cette fct ;

// ou bien innerHTML avec l’invocation :

document.getElementById("demo").innerHTML = [ "String" ou [EXPRESSION] ];

// où "String" est la chaîne qui doit être interprétée par du HTML ;


// et [EXPRESSION] est une expression qui doit être interprétée par du HTML ;

Ces Méthodes peuvent être utilisées pour afficher comme alert() .


**→ Opération de Lecture (Interaction avec l’user) :
 Syntaxes et Exemple :

var userName = prompt('Entrez votre prénom :');


alert(userName); // Affiche le prénom entré par l'utilisateur

// L’interprétation (Boîte de Dialogue) :

**→ Les Conditions :

 Syntaxes :

Condition (if … else) :


if ( condition1 )
{
//traitement;
}
elseif(condition2)
{
//traitement ;
}
Else
{
//Traitemrnt ;
}

Commutateur (switch):
switch (variable)
{
case cas1:
traitement1;
break;
case cas2:
traitement2;
break;
...
default:
// si la variable est différente de tous les cas ;
}
**→ Les Boucles :

 Syntaxes :

 Boucle while :
while (condition est vraie)
{
//traitement;
}

 Boucle do … while :
do
{
//Traitement ;
}while (condition est vraie) ;

 Boucle for
for(initialisation ; condition ; pas)
{
//traitement ;
}

**→ Les Fonctions :

 Syntaxes :

function nom_fonction(liste_Arguments)
{
// codes de traitement;
[return valeur_de_retour ;]
}

 Exemple :

function print_bonjour()
{
alert("Bonjour");
}

**→ Quelques Fonctions ou Objets Prédéfinie :


 Redirection : window.location.replace("lien");
Ou bien : window.location.href = "lien";
Avec [lien] : https://lienWeb.blaBla ou adresse_fichier
 Date Actuelle : now // now est un objet qui contient la date-heure actuelle
Avec les methodes :
now.getFullYear();now.getMonth();now.getDate();now.getHours();
now.getMinutes();now.getSeconds();
 Tri : objet.sort(); // Avec objet : liste,Tableau ou array
**→ Manipulation ses données d’un Fichier (compact) avec JavaScript :
(Maybe obsolet)
(Il est recommandé d’évité la manipulation des fichiers coté client)

 Ouverture du Fichier :

<script>

var chemin = "chemin_Absolu/nom_fichier.extension" ;


// si le fichier est dans le dossier courant du projet :
var chemin = "nom_fichier.extension" ;

var mode = valeur_mode_ouverture ;

// ouvrir un fichier :
var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
var monfichier = fileSystem.OpenTextFile(chemin, mode ,true);
// la variable monfichier représentera le fichier dans le PRG
</script>

Avec :
* Modes d’ouverture d’un fichier
1 Ouvre le fichier en lecture seule.

2 Ouvre le fichier en écriture.

8 Ouvre le fichier en écriture à la fin du fichier.

 Fermeture dans un Fichier :


monFichier.Close();

 Insérer dans un Fichier :

monFichier.Write() : permet d'écrire du texte dans le fichier ;

monFichier.WriteLine() : permet d'écrire du texte dans le fichier et rajoute un retour à la ligne ;

 Lecture d’un un Fichier :


monfichier.ReadAll() : pour lire tous ;
monfichier.Read(Nbr_Caractère) : Pour lire un certain nombre de caractères ;

 Autres fct :
 ObjetString.split(delimiter) : retourne un tableau de String, chacune d'elle
étant une sous-chaîne du paramètre $str extraite en utilisant le séparateur $delimiter.
**→ JavaScript & la Programmation Orienté Objet (POO in DevWEB) :

// Objet non-primitive (Objet or qu’un number,String,boolean,…) :

 Définition d’une Classe d’Objets :


1. var nom_Classe = Class.create();
2.
3. maClasse.prototype = {
4.
5. initialize : function()
6. {
7. this.attribut1;
8. this.attribut2;
9. }
10.
11. methodeA : function()
12. {
13. //code
14. }
15. methodeB : function()
16. {
17. //code
18. }
19.
20. }

/!\ Nota Bene : Il y a Plusieurs Méthodes pour créer des Objets et des classes

 Manipulation d’un objet :

 Création :
var nom_objet =new nom_classe(liste_args);

 Accès aux propriétés :


nom_objet.nom_attribut;

 Accès aux méthodes :


nom_objet.nomMéthode(liste_args);

 Supprimer un objet :
delete nom_objet ;

Vous aimerez peut-être aussi