Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parEstelle Pierre Modifié depuis plus de 8 années
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
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.