La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Marcel Bosc Introduction Web Université Paris-13Département informatiqueIUT de Villetaneuse 2011-2012 1ère année, cours - 3/5.

Présentations similaires


Présentation au sujet: "Marcel Bosc Introduction Web Université Paris-13Département informatiqueIUT de Villetaneuse 2011-2012 1ère année, cours - 3/5."— Transcription de la présentation:

1 Marcel Bosc Introduction Web Université Paris-13Département informatiqueIUT de Villetaneuse 2011-2012 1ère année, cours - 3/5

2 table des matières contenu dynamique introduction au PHP interaction et formulaires

3 contenu dynamique 1ère partie

4 client musique.org navigateur internet très simplifié... page html statique http://musique.org/essai.html serveur web 1 2 affichage essai.html 4 3 fichier

5 client musique.org navigateur internet logiciel très simplifié... html généré par le serveur rechercher "concerts lundi" base de données serveur web 1 2 3 4 génère html montrant les résultats de recherche 5 6 affichage html

6 musique.org rechercher http://musique.org/search.php base de données serveur web 1 2 3 html début page connexion à la BDD recherche -> requête SQL pour chaque résultat générer html avec liens html fin page 5 html search.php utiliser interpréteur PHP interpréteur PHP internet 4 html généré par le serveur

7 langages web - coté serveur PHP Java / JSP CGI - C, C++... Perl, Python, Ruby... ASP public class HelloServlet extends GenericServlet { public void service (ServletRequest request, ServletResponse response) { PrintWriter out = response.getWriter(); out.println (" "); out.println (" Bonjour! "); out.println (" "); }}} exemple Java (simplifié) <?php echo ' '; echo ' Bonjour! '; echo ' '; ?> exemple PHP

8 client votre poste de TP aquanux navigateur intranet très simplifié... configuration à l'IUT serveur web 6 affichage html serveur de fichiers essai.php 2 apache PH P ~/public_html/essai.php http://aquanux/~10612/essai.php 1 5 3 4

9 introduction au PHP 2ème partie manuel du PHP : http://fr.php.net/manual/fr

10 mon-site.org essai http://mon-site.org/essai.php serveur web 1 2 4 html essai.php utiliser interpréteur PHP interpréteur PHP internet 3 html généré, PHP <?php echo 'bonjour1'; echo 'bonjour2'; ?> l'affichage est envoyé vers le client début du code PHP début du code PHP fin du code PHP fin du code PHP bonjour1 bonjour2

11 PHP et HTML Mon article Un peu de texte. article a été consulté <?php $nbLecture=calculer(); echo $nbLecture; ?> fois début du code PHP début du code PHP fin du code PHP fin du code PHP essai.php (fichier sur le serveur) requête: http://mon-site.org/essai.php simplifié HTM L PHP Mon article Un peu de texte. article a été consulté 123 fois

12 PHP et HTML vous avez marqué points vous avez marqué 50 points <?php echo " vous avez marqué" ; echo $score ; echo " points "; ?P> exemple1.php exemple2.php HTML généré

13 variables et types // pas de déclaration $maVariable = 123; echo $maVariable; variables non déclarées, types gérés automatiquement! PHP Java // déclaration int a ; // affectation a=1 ; // utilisation System.out.println(a); // pas de déclaration // affectation $a=1 ; // utilisation echo $a;

14 variables et types Java $v = 123;// entier $w = false;// booléen $x = 3.14159;// flottant $y = "bonjour"; // chaîne int v = 123; // entier booleanw = false;// booléen float x = 3.14159;// flottant String y = "bonjour"; // chaîne PHP

15 chaînes de caractères echo 'une chaîne'; echo "une chaîne"; echo ' '; echo "L'utilisateur Toto a 20 ans"; choisir le plus pratique! Guillemets simples Guillemets doubles

16 concaténation : «. » echo 'une '.'chaîne'; $nom='Toto'; echo 'je suis '.$nom; Java System.out.println("une" + "chaîne"); String nom="Toto"; System.out.println("je suis" + nom); PHP

17 chaînes et variables $nom = 'Durand'; echo "je suis $nom"; echo 'je suis $nom'; je suis Durand je suis $nom Guillemets simples ou doubles $nom='Toto'; $age=20; echo "L'utilisateur $nom a $age ans"; echo 'L\'utilisateur '.$nom.' a '.$age.' ans'; concaténation

18 boucles for($i=0; $i<10;$i++) { echo " ligne numéro $i "; } boucle classique Peu utilisé! En pratique on parcourt des tableaux

19 fonctions function ma_fonction($nom) { echo "je suis $nom"; } définition: ma_fonction("Dupond"); appel:

20 fonctions class Essai { void exemple(String nom) { System.out.println("je suis " + nom); } public static void main(String[] args) { this.exemple("Dupond"); } Java function ma_fonction($nom) { echo "je suis $nom"; } ma_fonction("Dupond"); PHP

21 tableaux indexés $t[0] = "Paris"; $t[1] = "Dijon"; pas de déclaration String[] t = new String[100] ; t[0]= "Paris"; t[1]= "Dijon"; String[] t = {"Paris", "Dijon"}; System.out.println(t[1]); Java PHP Java PHP $t = array("Paris", "Dijon"); echo $t[1]; élément 0 élément 1

22 tableaux indexés $villes[] = 'Lyon' ; $villes[] = 'Nancy' ; $villes[] = 'Metz'; ajouter des éléments [] : ajouter à la fin PHP Java 2 "Metz" 0 "Lyon" 1 "Nancy"

23 tableaux associatifs simple en PHP clévaleur 'Ahmed' 13,1 'Dupond' 10,5 tableau associatiftableau indexé indexvaleur 2 13,1 3 10,5 0 12 'Durand' 12 1 11 'Chen' 11 séquence d'entiers séquence d'entiers clés arbitraires clés arbitraires $notes['Dupond'] = 10,5 notes[3] = 10,5 classique : C, Java... Très utilisé !!!

24 tableaux associatifs $notes = array('durand'=>12, 'chen' =>11); echo $notes['chen']; clé valeur élément 'durand' élément 'chen' $notes['durand'] = 12; $notes['chen'] = 11; clé valeur

25 Exemples de tableaux $etudiant['nom']='Toto'; $etudiant['age']=20; echo $etudiant['nom']; $etudiant['age']=$etudiant['age']+2; var_dump($variable); print_r($tableau); pratique pour débugger :

26 foreach : boucles / tableaux $notes = array('durand'=>12, 'chen' =>11); $notes['ahmed']=13; foreach($notes as $nom => $points) { echo "$nom a eu $points/20"; } durand a eu 12/20 chen a eu 11/20 ahmed a eu 13/20

27 include utiliser le contenu d'un autre fichier PHP <?php echo 'bonjour'; include 'fichier2.php'; echo 'aurevoir'; ?> fichier1.php <?php echo 'dans fichier2'; echo 'bla bla bla'; ?> fichier2.php <?php echo 'bonjour'; echo 'dans fichier2'; echo 'bla bla bla'; echo 'aurevoir'; ?>

28 include : variantes include 'toto.php' include_once 'toto.php' require 'toto.php' require_once 'toto.php' include require erreur si le fichier n'existe pas ok, même si le fichier n'existe pas _once ne pas re-inclure si le fichier l'a déjà été utiliser le contenu d'un autre fichier PHP en général : require_once

29 classes et objets <?php class Personne { var $age; function viellir() {$this->age++;} function __construct() { echo "Création d'une personne"; } class Etudiant extends Personne { //.... } $p1 = new Personne(); $p2 = new Etudiant(); ?> $this est obligatoire PHP4 != PHP5

30 interaction et formulaires 3ème partie

31 formulaire : exemple simple 2 1 12 form.html simplifié...

32 formulaire : exemple 2 termes à chercher: en francais? 2 1 5 3 4 1 2 3 4 5 form.html

33 client (navigateur) serveur internet search.php interaction http://site.org/form.html base de données 1 3 6 affichage formulaire form.html form.html apache form.html http://site.org/search.php html résultats recherche soumission du formulaire saisie utilisateur 4 apache 5 PH P affichage résultats recherche 7 site.org 2 8 concert lundi

34 client (navigateur) serveur search.php soumission d'un formulaire base de données 6 http://site.org/search.php soumission du formulaire saisie utilisateur 4 apache 5 PH P site.org informations saisies client serveur 2 méthodes: GE T POS T recherche le mot "basse" champ texte: name="terms" terms="basse"

35 formulaires PHP <?php... $saisie=$_GET['terms'];... echo "vous avez écrit: $saisie"; ?>... form.html search.php soumission du formulaire concert lundi

36 méthode GET GET: ne modifie pas l'état sur le serveur. Peut-être répété sans conséquences http://site.org/search.php?terms=basse exemples: modifier l'affichage faire une recherche contre-exemples: payer en ligne ajouter un commentaire sur un forum "lire des infos sur le serveur"

37 méthode POST POST: change l'état du serveur. Répétition potentiellement gênante terms=basse dans la requête http contre-exemples: modifier l'affichage faire une recherche exemples: payer en ligne ajouter un commentaire sur un forum "écrire des infos sur le serveur"

38 ce document est distribué librement : sous licence GNU FDL : http://www.gnu.org/copyleft/fdl.html les originaux sont disponibles aux formats OpenOffice et powerpoint http://www-info.iutv.univ-paris13.fr/~bosc


Télécharger ppt "Marcel Bosc Introduction Web Université Paris-13Département informatiqueIUT de Villetaneuse 2011-2012 1ère année, cours - 3/5."

Présentations similaires


Annonces Google