Formation Django. Maxime Arthaud basé sur les slides de V. Angladon et V. Duvert. Jeudi 7 novembre 2013
|
|
- Zoé Crevier
- il y a 8 ans
- Total affichages :
Transcription
1 Maxime Arthaud basé sur les slides de V. Angladon et V. Duvert Jeudi 7 novembre supportformations/django/2013 Maxime Arthaud basé sur les slides de V. Angladon et V. Duvert Jeudi 7 novembre supportformations/django/2013
2 Bibliothèque =/= Framework : bibliothèque : collection de fonctions + classes spécialisées framework : ensemble de fonctions + classes + méthodologie. En général on ne peut pas changer de framework sans repartir à zéro.
3
4 Tout le monde sait ce qu est une base de donnée? BD = entité dans laquelle on peut stocker des données structurées selon un modèle prédéfini. Base = ensemble de tables. Table = tableau avec des colonnes prédéfinies (nom + type). permettent de faire des opérations complexes sur ces données : tri, sélection/filtrage à l aide d un langage,... permet accès concurrents, protection contre la corruption, récupération de données si requête interrompue, sécurité,... C est beaucoup mieux que de gérer des fichiers
5
6
7
8 CMS = gestionnaire de contenu (SPIP, Joomla, Drupal,...) site dynamique tout prêt (personnalisable) ou il suffit de rajouter du contenu via une interface d administration.
9 Attention Version actuelle : Django 1.6 (Python2 ou Python3) Utilisez Django 1.5 avec python 2 >> Architecture Attention Version actuelle : Django 1.6 (Python2 ou Python3)
10 Attention Version actuelle : Django 1.6 (Python2 ou Python3) Utilisez Django 1.5 avec python 2 >> Architecture Attention Version actuelle : Django 1.6 (Python2 ou Python3)
11 Architecture Architecture Architecture Requête URL Vue Modèle Template Réponse (HTML) Requête URL Vue Modèle Template Réponse (HTML) Fonctionnement de Django : slide le plus important de la formation. l utilisateur charge une page de votre serveur serveur HTTP a plusieurs instance de Django prêtes à traiter des requêtes Django créé un objet Requête représentant votre requête qui passe à travers divers couches d intergiciels modifiant éventuellement cet objet Maintenant j en viens à ce qui est important et figure sur le schéma Django parse l url et cherche la vue lui correspondant Toute l essences du site réside dans les vues qui peuvent récupérer des données de bases de données et effectuer un rendu HTML avec des templates éventuellement. La vue précédemment sélectionnée renvoie un objet RéponseHTTP Cet objet repasse à travers les couches d intergiciels. >> 1e projet
12 Créer un site Django Créer un site Django Créer un site Django $ django-admin.py startproject monsite $ tree monsite/ monsite +-- manage.py +-- monsite +-- init.py +-- settings.py +-- urls.py +-- wsgi.py $ cd monsite $ python2 manage.py runserver [...] $ django-admin.py startproject monsite $ tree monsite/ monsite +-- manage.py +-- monsite +-- init.py +-- settings.py +-- urls.py +-- wsgi.py $ cd monsite $ python2 manage.py runserver [...] >> 1e vue
13 Votre 1e vue! Votre 1e vue! Votre 1e vue! 1 Créez un fichier monsite/views.py 2 Copiez y le code suivant : # -*- coding: utf-8 -*- from django.http import HttpResponse def home(request): return HttpResponse("Hello") Vue renvoie un objet RéponseHTTP 1 Créez un fichier monsite/views.py 2 Copiez y le code suivant : Oui mais il faut dire quelque part qu il faut utiliser cette vue quand une url donnée est demandée. >> urls # -*- coding: utf-8 -*- from django.http import HttpResponse def home(request): return HttpResponse("Hello")
14 La gestion des URLs La gestion des URLs La gestion des URLs 1 Ouvrez le fichier monsite/urls.py 2 Modifiez le code pour avoir : from django.conf.urls.defaults import patterns, \ include, url urlpatterns = patterns(, url(r ^$, monsite.views.home ), ) 1 Ouvrez le fichier monsite/urls.py 2 Modifiez le code pour avoir : from django.conf.urls.defaults import patterns, \ include, url urlpatterns = patterns(, url(r ^$, monsite.views.home ), ) C est là qu on fait l aiguillage des urls (selon regexp matchée) vers une vue. Pas besoin de / a la fin des urls le r signifie que l on considere la chaine de l expression reguliere en mode "raw" ie \t n est pas interprete comme le caractere de tabulation mais comme \ suivi de t, permet d écrire \b au lieu de \\b (car \ doit être échappé en Python) M? signifie M est optionnel Formation ou ;. tout Django char sauf \n ; \w = mot alphanum La gestion des URLs M0,3 : on peut reconnaitre 0 ou 1 ou 2 ou 3 M consécutifs 1 Ouvrez le fichier monsite/urls.py 2 M3 : reconnaitre exactement 3 M consécutifs Modifiez le code pour avoir : M+ : 1 ou 2 ou... M consécutifs, M* : 0 ou 1 ou 2... urlpatterns = patterns(, La gestion des URLs from django.conf.urls.defaults import patterns, \ include, url ) url(r ^$, monsite.views.home ),
15 URLs et expressions régulières URLs et expressions régulières URLs et expressions régulières #... suite de l urlpattern dans urls.py (r ^annee/(\d{4})$, monsite.views.annee ), (r ^aff/(?p<texte>.+)/$, monsite.views.aff ), # vues associees dans views.py def annee(request, year): return HttpResponse("On est en "+year) def aff(request, texte): return HttpResponse("Bonjour "+texte) #... suite de l urlpattern dans urls.py (r ^annee/(\d{4})$, monsite.views.annee ), (r ^aff/(?p<texte>.+)/$, monsite.views.aff ), Si on continue comme ça : urls.py de 500 lignes. Donc découper projet en modules/apps >> 1e app # vues associees dans views.py def annee(request, year): return HttpResponse("On est en "+year) def aff(request, texte): return HttpResponse("Bonjour "+texte)
16 Première application Première application Première application $ python2 manage.py startapp monapp $ ls monapp init.py models.py tests.py views.py 1 ajouter l application dans le tuple INSTALLED_APPS de settings.py 2 bonne pratique : monapp/urls.py >> config des urls $ python2 manage.py startapp monapp $ ls monapp init.py models.py tests.py views.py 1 ajouter l application dans le tuple INSTALLED_APPS de settings.py 2 bonne pratique : monapp/urls.py
17 Découplage des URLs Découplage des URLs Découplage des URLs # Rajouter cet urlpattern dans monsite/urls.py url(r ^monapp/, include( monapp.urls )) # monapp/urls.py from django.conf.urls import patterns, include, url urlpatterns = patterns( monapp.views, url(r ^$, index ), url(r ^info$, info ), ) # Rajouter cet urlpattern dans monsite/urls.py url(r ^monapp/, include( monapp.urls )) # monapp/urls.py from django.conf.urls import patterns, include, url Le premier paramètre de patterns est un prefix pour les noms des vues. Pour le moment on sait afficher des chaines de caractère et gérer des urls. Avant de passer aux templates, regardons les modèles. >> modèle urlpatterns = patterns( monapp.views, url(r ^$, index ), url(r ^info$, info ), )
18 Création d un modèle Création d un modèle Création d un modèle 1 Configurer la base de donnée dans settings.py 2 Créer les modèles 3 Générer les tables à partir du modèle Page de référence sur la configuration des bases de données : Page de référence sur les champs des modèles : 1 Configurer la base de donnée dans settings.py 2 Créer les modèles 3 Générer les tables à partir du modèle Je saute la configuration de settings.py car bien commenté possibilité configuration plusieurs DB. Modèle = classe qui définie une table. les instances de cette classe sont des lignes de la table. La génération des tables est automatique. >> 1e modèle Page de référence sur la configuration des bases de données : Page de référence sur les champs des modèles :
19 Premier modèle Premier modèle Premier modèle # monapp/models.py from django.db import models class Article(models.Model): nom = models.charfield(verbose_name="nom de l article"\, max_length=128) description = models.textfield(max_length=512) prix = models.decimalfield(decimal_places=2, max_digits=6) couleurs = models.textfield(default="blue") ecole = models.foreignkey(ecole, editable=false) def unicode (self): return self.nom # monapp/models.py from django.db import models class Article(models.Model): nom = models.charfield(verbose_name="nom de l article"\, max_length=128) description = models.textfield(max_length=512) prix = models.decimalfield(decimal_places=2, max_digits=6) couleurs = models.textfield(default="blue") ecole = models.foreignkey(ecole, editable=false) def unicode (self): return self.nom Tiré du code du portail (modifié) CharField, TextField, DecimalField, ForeignKey max_length, default verbose_name : nom utilisé pour le formulaire blank : peut être laissé vide/null ou pas editable : pas apparaître dans le formulaire généré, ni dans l interface d admin Méthode unicode () : gérer comment afficher l objet, ex dans un print(). Idem que str () mais renvoie une chaîne utf-8. Les chaînes des DB sont converties en unicode par Django. >> création de la db
20 Création de la base de donnée Création de la base de donnée Création de la base de donnée Création de la base : $ python2 manage.py syncdb Voir les commandes SQL exécutées : $ python2 manage.py sql monapp Visualiser une base de donnée sqlite : $ sqliteman mabase.sqlite Création de la base : >> 1e requete $ python2 manage.py syncdb Voir les commandes SQL exécutées : $ python2 manage.py sql monapp Visualiser une base de donnée sqlite : $ sqliteman mabase.sqlite
21 Premières requêtes Premières requêtes Premières requêtes $ python2 manage.py shell Manipuler les modèles : Modele.objects.all() Modele.objects.get() Modele.objects.filter() entree.delete() entree.save() Pages de référence : $ python2 manage.py shell Manipuler les modèles : En va faire ça ensemble. Lançons un shell particulier qui va mettre en place l environnement. >> template Modele.objects.all() Modele.objects.get() Modele.objects.filter() entree.delete() entree.save() Pages de référence :
22 Template = page html liée à une vue 1 configurer TEMPLATE_DIRS dans settings.py 2 définir les variables affichées/utilisées par le template et les regrouper dans un dictionnaire 3 changer la vue pour quelle renvoie render(request, montemplate.html, dictionnaire) Pages de référence : Template = page html liée à une vue >> exemple 1 configurer TEMPLATE_DIRS dans settings.py 2 définir les variables affichées/utilisées par le template et les regrouper dans un dictionnaire 3 changer la vue pour quelle renvoie render(request, montemplate.html, dictionnaire) Pages de référence :
23 Exemple d utilisation Exemple d utilisation Exemple d utilisation La vue from monapp.models import Article from django.shortcuts import render def index(request): c = { articles : Article.objects.all()} return render(request, index.html, c) Le template index.html <h1>liste des articles</h1> <ul> {% for a in articles %} <li>{{ a.nom }}</li> {% endfor %} </ul> La vue from monapp.models import Article from django.shortcuts import render def index(request): c = { articles : Article.objects.all()} return render(request, index.html, c) Le template index.html <h1>liste des articles</h1> <ul> {% for a in articles %} <li>{{ a.nom }}</li> {% endfor %} </ul> {{ }} : accès variables {% %} : commande de template Remarquez le for comme si on était en Python Notez la syntaxe objet.attribut (f.id), idem pour accès liste/tuple : f.0, f.1... balise url, if ou else possibilité d appliquer des fonctions (filtres) à des variables via >> blocs
24 Etendre des blocs Etendre des blocs Etendre des blocs Page principale, main.html <html lang="fr"> <head><title>{% block title %}{% endblock %}</title></head> <body> <h1>bienvenue!</h1> {% block content %}{% endblock %} </body> </html> Page affichage.html qui va étendre main.html {% extends "main.html" %} {% block title %}Le titre de ma page{% endblock %} {% block content %} Du contenu ici. {% endblock %} Page principale, main.html <html lang="fr"> <head><title>{% block title %}{% endblock %}</title></head> <body> <h1>bienvenue!</h1> {% block content %}{% endblock %} </body> </html> Page affichage.html qui va étendre main.html {% extends "main.html" %} {% block title %}Le titre de ma page{% endblock %} {% block content %} Du contenu ici. {% endblock %} le contenu de affichage.html va etre inséré dans main.html >> formulaires
25 A la main A la main A la main Définition du formulaire, forms.py from django import forms class InscriptionForm(ModelForm): login = forms.charfield(required=true) password = forms.charfield(label= Mot de passe, required=t code = forms.integerfield() Son template, edit.html <form action="" method="post"> {% csrf_token %} {{ form.as_p }} <input type="submit" value="submit" /> </form> Définition du formulaire, forms.py from django import forms class InscriptionForm(ModelForm): login = forms.charfield(required=true) >> vue du formulaire password = forms.charfield(label= Mot de passe, required=true, widget=forms.passwordinput) code = forms.integerfield() Son template, edit.html <form action="" method="post"> {% csrf_token %} {{ form.as_p }} <input type="submit" value="submit" /> </form> On peut utiliser request.get et request.post, mais ce n est pas propre. Form = Même chose que les modèles. form.as_table, form.as_ul,..
26 Vue d un formulaire Vue d un formulaire Vue d un formulaire from django.shortcuts import redirect def inscription(request): if request.method == POST : form = InscriptionForm(request.POST) if form.is_valid(): # Faire qqch avec les donnees.. return redirect( monapp.views.merci ) else: form = InscriptionForm() return render(request, inscription.html, { form : form}) form.cleaned_data est un dictionnaire avec la valeur des champs from django.shortcuts import redirect >> formulaire généré à partir d un modèle def inscription(request): if request.method == POST : form = InscriptionForm(request.POST) if form.is_valid(): # Faire qqch avec les donnees.. return redirect( monapp.views.merci ) else: form = InscriptionForm() return render(request, inscription.html, { form : form})
27 A partir d un modèle A partir d un modèle A partir d un modèle Formulaire, forms.py class ArticleForm(models.ModelForm): class Meta: model = Article fields = ( login, password, code ) Vue, views.py objet = get_object_or_404(article, pk=1) if request.method == POST : form = ArticleForm(request.POST, instance=objet) if form.is_valid(): form.save() return redirect(objet) else: form = ArticleForm(instance=objet) return render(request, edit.html, { form : form}) Formulaire, forms.py class ArticleForm(models.ModelForm): class Meta: model = Article fields = ( login, password, code ) Vue, views.py objet = get_object_or_404(article, pk=1) if request.method == POST : form = ArticleForm(request.POST, instance=objet) if form.is_valid(): form.save() return redirect(objet) else: form = ArticleForm(instance=objet) return render(request, edit.html, { form : form}) Formulaire généré automatiquement, customisable Dans le cas de l ajout, ne pas passer en paramètre un objet get_object_or_404 permet de retourner un objet, ou erreur 404 code-snippet, pas à retenir! >> admin
28 1 Décommenter les lignes concernant l interface d administration dans settings.py et urls.py 2 Mettre à jour les tables (syncdb) 3 Pour chaque application, indiquer les modèles pris en charge par l interface d administration via un fichier admin.py comme suit : from monapp.models import Modele1, Modele2 from django.contrib import admin admin.site.register(modele1) admin.site.register(modele2) 1 Décommenter les lignes concernant l interface d administration dans settings.py et urls.py 2 Mettre à jour les tables (syncdb) Générée automatiquement, customisable :) >> exo 3 Pour chaque application, indiquer les modèles pris en charge par l interface d administration via un fichier admin.py comme suit : from monapp.models import Modele1, Modele2 from django.contrib import admin admin.site.register(modele1) admin.site.register(modele2)
29 Exercice : FaceMash Exercice : FaceMash Exercice : FaceMash Cahier des charges, fonctions à implémenter : ajouter/éditer un utilisateur (Nom, adresse mail, photo) via un formulaire visualiser une liste des utilisateurs triée selon leur score visualiser le profil d un utilisateur enregistrer les votes : date, vote, ip du votant (on est méchant) afficher la liste des votes vote : afficher les photos de 2 utilisateurs choisis aléatoirement, le vote s effectue en cliquant sur l une des photos interface d administration Cahier des charges, fonctions à implémenter : ajouter/éditer un utilisateur (Nom, adresse mail, photo) via un formulaire visualiser une liste des utilisateurs triée selon leur score visualiser le profil d un utilisateur enregistrer les votes : date, vote, ip du votant (on est méchant) afficher la liste des votes vote : afficher les photos de 2 utilisateurs choisis aléatoirement, le vote s effectue en cliquant sur l une des photos interface d administration Vous pouvez partir si vous voulez, vous avez la correction. L intérêt de faire l exo ici est qu on peut vous aider... FaceMash consiste à... Une partie du code vous est donnée. environ 200 lignes de code Python Attention, settings.py à compléter! script init.sh pour peupler votre base de donnée
Django. Framework de développement Web
Django Framework de développement Web Disclaimer Je ne suis pas un expert Python Je ne suis pas un expert Django Expérience basée sur le développement de deux petits sites en Django Trivialibre MapOSMatic
Plus en détailSécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin
Sécurité des sites Web Pas un cours un recueil du net INF340 Jean-François Berdjugin Vulnérabilité Définition (wikipédia) : Dans le domaine de la sécurité informatique, une vulnérabilité est une faiblesse
Plus en détailles techniques d'extraction, les formulaires et intégration dans un site WEB
les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents
Plus en détailModule Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP
Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec
Plus en détailLANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation
ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier
Plus en détailModule BD et sites WEB
Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD
Plus en détailBases de Données et Internet
Informatique S6 3A Bases de Données et Internet Python: SGBD et CGI Alexis NEDELEC LISYC EA 3883 UBO-ENIB-ENSIETA Centre Européen de Réalité Virtuelle Ecole Nationale d Ingénieurs de Brest enib c 2008
Plus en détailSYSTÈMES D INFORMATIONS
SYSTÈMES D INFORMATIONS Développement Modx Les systèmes de gestion de contenu Les Content Management Système (CMS) servent à simplifier le développement de sites web ainsi que la mise à jour des contenus.
Plus en détailGuide d implémentation. Réussir l intégration de Systempay
Guide d implémentation - Interface avec la plateforme de paiement - Réussir l intégration de Systempay Version 1.4b Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa
Plus en détailGestion de stock pour un magasin
Département d Informatique Université de Fribourg, Suisse http://diuf.unifr.ch Gestion de stock pour un magasin Stock online utilise ASP/MS-Access DO Thi Tra My No étudiant : 05-333-750 Travail de séminaire
Plus en détailAttaques applicatives
Attaques applicatives Attaques applicatives Exploitation d une mauvaise programmation des applications Ne touche pas le serveur lui-même mais son utilisation/ configuration Surtout populaire pour les sites
Plus en détailFormation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux
Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailModélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework
Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé
Plus en détailProjet en nouvelles technologies de l information et de la communication
Projet en nouvelles technologies de l information et de la communication Site Web universitaire du Prof. Jacques Moeschler. Nono Steeve Semestre de printemps 2013 Sous la direction du Prof Luka Nerima
Plus en détailPrincipales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement
Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.
Plus en détailDrupal (V7) : principes et petite expérience
Drupal (V7) : principes et petite expérience Jean-Luc Archimbaud CNRS/Mathdoc http://jl.archimbaud.free.fr/ Présentation journées Mathrice 10 oct 2012 V1.2 Corrigez mon discours ou complétez... Licence
Plus en détailInitiation à la programmation en Python
I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de
Plus en détailLes solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test?
Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC Qui contacter pour commencer la mise en place d une configuration de test? CyberMUT Paiement - Paiement CIC Commerce Electronique mailto:centrecom@e-i.com
Plus en détailINTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)
CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.
Plus en détailCréer une base de données vidéo sans programmation (avec Drupal)
Créer une base de données vidéo sans programmation (avec Drupal) 10.10.2013 Nicolas Bugnon (nicolas.bugnon@alliancesud.ch) Centre de documentation Alliance Sud www.alliancesud.ch Résultat de l atelier
Plus en détailDevenez un véritable développeur web en 3 mois!
Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web
Plus en détailPHP 5.4 Développez un site web dynamique et interactif
Editions ENI PHP 5.4 Développez un site web dynamique et interactif Collection Ressources Informatiques Table des matières Table des matières 1 Chapitre 1 Introduction 1. Objectif de l'ouvrage.............................................
Plus en détailSécurité des applications web. Daniel Boteanu
I F8420: Éléments de Sécurité des applications web Daniel Boteanu Architecture des applications web Client légitime Internet HTTP 浀 HTML Server Web 2 Architecture des applications web Client légitime Internet
Plus en détailSoyez accessible. Manuel d utilisation du CMS
Soyez accessible. Manuel d utilisation du CMS Nameo : mode d emploi Nameo est une agence web basée en Alsace, à Strasbourg. Son champ d action : création ou refonte de sites internet, stratégie et mise
Plus en détailHébergement de site web Damien Nouvel
Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture
Plus en détailAdministration du site (Back Office)
Administration du site (Back Office) A quoi sert une interface d'administration? Une interface d'administration est une composante essentielle de l'infrastructure d'un site internet. Il s'agit d'une interface
Plus en détailBTS S.I.O. 2012-2013 PHP OBJET. Module SLAM4. Nom du fichier : PHPRévisionObjetV2.odt Auteur : Pierre Barais
BTS S.I.O. 2012-2013 PHP OBJET Module SLAM4 Nom du fichier : PHPRévisionObjetV2.odt Auteur : Pierre Barais Table des matières 1 But... 3 2 Les bases :... 3 3 Utilisation d'une classe : Instanciation...3
Plus en détail25 mars. Tutoriel sur Laravel. Préparé par : Lydiane Beaulne-Bélisle. Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel.
25 mars Tutoriel sur Laravel Préparé par : Lydiane Beaulne-Bélisle Ceci est un tutorial qui montre comment débuter avec le Framework PHP Laravel. Créé pour le cours de Projet de fin d étude Collège de
Plus en détailSTAGE2 STAGIAIRE / NIKOLAOS TSOLAKIS. 16/02/2015 : choix des outils nécessités pour l application : Didier Kolb, le maitre de stage
STAGE2 STAGIAIRE / NIKOLAOS TSOLAKIS 16/02/2015 : choix des outils nécessités pour l application : Didier Kolb, le maitre de stage m invite à faire une étude sur les outils qui seraient utilisés. Sites
Plus en détailDéploiement des manuels numériques sur tablette. Mode d emploi intégrateur / administrateur
Déploiement des manuels numériques sur tablette Mode d emploi intégrateur / administrateur Table des matières Introduction... 3 Etape 1 : récupération de l application sur les stores... 3 Etape 2 : création
Plus en détailPar KENFACK Patrick MIF30 19 Mai 2009
Par KENFACK Patrick MIF30 19 Mai 2009 1 Introduction II. Qu est ce qu un OpenId? III. Acteurs IV. Principe V. Implémentation VI. Sécurité VII. conclusion I. 2 Vue le nombre croissant de sites web nous
Plus en détailRefonte des sites internet du SIEDS
Refonte des sites internet du SIEDS Formation à la rédaction de contenu 31 juin 2005 09 h 00 Salle du CA, rue Notre Dame, à NIORT Déroulement Un CMS à quoi çà sert? La gestion de contenu selon SPIP Agora
Plus en détaile-obs : Conception et utilisation Rémy Decoupes Ether // ums3365
e-obs : Conception et utilisation Rémy Decoupes Ether // ums3365 1 e-obs - Plan i. A quoi sert e-obs ii. Positionnement d e-obs dans la chaine de production iii. Description générale des modules iv. Démonstration
Plus en détailBES WEBDEVELOPER ACTIVITÉ RÔLE
BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et
Plus en détailMaarch Framework 3 - Maarch. Tests de charge. Professional Services. http://www.maarch.fr. 11, bd du Sud Est 92000 Nanterre
Maarch Professional Services 11, bd du Sud Est 92000 Nanterre Tel : +33 1 47 24 51 59 Fax : +33 1 47 24 54 08 Maarch Framework 3 - Maarch PS anime le développement d un produit d archivage open source
Plus en détailPLATEFORME DE GESTION DE CONGRÈS SCIENTIFIQUES. 12 mars 2015
PLATEFORME DE GESTION DE CONGRÈS SCIENTIFIQUES 12 mars 2015 Sommaire La plateforme Sciencesconf.org Le portail L espace conférence Site web Gestion scientifique Dépôt, sélection, envoi de mails, édition
Plus en détailSage 100 CRM - Guide de la Fusion Avancée Version 8. Mise à jour : 2015 version 8
Sage 100 CRM - Guide de la Fusion Avancée Version 8 Mise à jour : 2015 version 8 Composition du progiciel Votre progiciel est composé d un boîtier de rangement comprenant : le cédérom sur lequel est enregistré
Plus en détailDjango et PostgreSQL sous la charge
Django et PostgreSQL sous la charge Rodolphe Quiédeville Pourquoi couper la queue du poulet? RMLL - Beauvais 8 juillet 2015 Rodolphe Quiédeville (PeopleDoc) Django et PostgreSQL sous la charge 8 juillet
Plus en détailIntroduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)
Introduction PHP = Personal Home Pages ou PHP Hypertext Preprocessor Langage de script interprété (non compilé) Plan Avantages Fonctionnement interne Bases du langage Formulaires Envoi d un email Avantages
Plus en détailProgrammation Web. Madalina Croitoru IUT Montpellier
Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance
Plus en détailLes outils de création de sites web
Tuto 1ère séance - p1 Les outils de création de sites web Sources : Réalisez votre site web avec HTML5 et CSS3 de Mathieu Nebra (Edition Le Livre du Zéro) site fr.openclassrooms.com (anciennement «site
Plus en détailSommaire Accès via un formulaire d'identification... 4 Accès en mode SSO... 5 Quels Identifiant / mot de passe utiliser?... 6
Sommaire Accès via un formulaire d'identification... 4 Accès en mode SSO... 5 Quels Identifiant / mot de passe utiliser?... 6 2 І O2S Intégration O2S dans un site Internet Ce document présente une description
Plus en détailSpétechs Mobile. Octobre 2013
Spétechs Mobile Octobre 2013 Appli ios Appli Android Site Mobile Les clicks URL Appli ios Créa en dur HTML5 Créa en dur Banner Interstitiel Interstitiel Vidéo Bouncing / traveling Image Bouncing / traveling
Plus en détailServeur d Applications Web : WebObjects
Serveur d Applications Web : WebObjects Nicolas Roard 29 avril 2004 Table des matières 1 Introduction 1 2 Historique 1 2.1 Implémentation WebObjects....... 2 2.2 Différences et manques?......... 3 3 Principes
Plus en détailProjet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :
CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i
Plus en détailManuel : Comment faire sa newsletter
Manuel : Comment faire sa newsletter Adresse : www.yestravel.be/acymailing Se connecter - Login (identifiant) = l adresse mail - Mot de Passe = mot de passe qui vous a été donné par. Cliquer sur [connexion]
Plus en détailAutomatisation de l administration système
Automatisation de l administration système Plan Problèmatique : trop de systèmes, trop de solutions Typage des solutions Puppet : gestion de configuration de systèmes Capistrano : déploiement d applications
Plus en détailSYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8
SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8 INTRODUCTION Bonjour à tous; Aujourd hui je publie une nouvelle version de l adaptation de la Sync Framework Toolkit,
Plus en détail4. Personnalisation du site web de la conférence
RTUTORIEL Prise en main de la plateforme 1. Création de l espace conférence Connectez- vous sur le portail http://test- www.sciencesconf.org avec le compte : - Identifiant : «admin1» - Mot de passe «1234»
Plus en détailWEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES
WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,
Plus en détailInstallation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6
Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 1 BERNIER François http://astronomie-astrophotographie.fr Table des matières Installation d un serveur HTTP (Hypertext Transfer
Plus en détailMaster1 ère année. Réseaux avancés I. TP nº5 filière ISICG
Master1 ère année Réseaux avancés I TP nº5 filière ISICG Utilisation de la microplateforme Bottle et du framework AngularJS La «micro web-framework» Bottle pour Python Les principales caractèristiques
Plus en détailCursus 2013 Déployer un Content Management System
Cursus 2013 Déployer un Content Management System Les critères d évaluation d un CMS Les utilisateurs, après examen de la taille de la base d utilisateurs en France. La communauté, selon son dynamisme
Plus en détailPHP 4 PARTIE : BASE DE DONNEES
PHP 4 PARTIE : BASE DE DONNEES 1. Introduction 2. Présentation de MySQL 3. Principe 4. Connexion 5. Interrogation 6. Extraction des données 7. Fonctions de services 8. Traitement des erreurs 9. Travaux
Plus en détailGUIDE D INSTALLATION DE L APPLICATION GECOL SUR
GUIDE D INSTALLATION DE L APPLICATION GECOL SUR SERVEUR WINDOWS INTRODUCTION Le guide d installation qui va suivre va tenter d amener de la simplicité et de centraliser toutes les informations nécessaires
Plus en détailS7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i
Modernisation IBM i Nouveautés 2014-2015 IBM Power Systems - IBM i 19 et 20 mai 2015 IBM Client Center, Bois-Colombes S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Mardi
Plus en détail1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions
Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 4 : Fonctions La construction de fonctions dans un langage de programmation permet aux
Plus en détail3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures
3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures Objectif global : A l issue de la formation, les stagiaires doivent être opérationnels dans la création d un site internet
Plus en détailUn site web collaboratif avec Drupal. Judith Hannoun - Journées INSHS 16 Octobre 2012
Un site web collaboratif avec Drupal Judith Hannoun - Journées INSHS 16 Octobre 2012 Site web Ensemble de pages en html Des liens hypertextes Une base de données si site dynamique Une interface graphique
Plus en détailL envoi d un formulaire par courriel. Configuration requise... 236 Mail Texte... 237 Mail HTML... 242 Check-list... 248
L envoi d un formulaire par courriel Configuration requise... 236 Mail Texte... 237 Mail HTML... 242 Check-list... 248 Chapitre 9 L envoi d un formulaire par courriel L envoi par courriel d informations
Plus en détailVulnérabilités et solutions de sécurisation des applications Web
Vulnérabilités et solutions de sécurisation des applications Web Patrick CHAMBET EdelWeb ON-X Consulting patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com Eric Larcher RSSI Accor
Plus en détailPHP CLÉS EN MAIN. 76 scripts efficaces pour enrichir vos sites web. par William Steinmetz et Brian Ward
PHP CLÉS EN MAIN 76 scripts efficaces pour enrichir vos sites web par William Steinmetz et Brian Ward TABLE DES MATIÈRES INTRODUCTION 1 1 TOUT CE QUE VOUS AVEZ TOUJOURS VOULU SAVOIR SUR LES SCRIPTS PHP
Plus en détailFormation. Module WEB 4.1. Support de cours
Formation Module WEB 4.1 Support de cours Rédacteur Date de rédaction F.CHEA 08/02/2012 Les informations contenues dans ce document pourront faire l'objet de modifications sans préavis Sauf mention contraire,
Plus en détailWIMS. Découvrir et utiliser
WIMS Découvrir et utiliser (version préliminaire - 3 janvier 2011) Copyright c 2009 WIMS EDU GNU FDL Copyleft 2009 http://wimsedu.info 1 Découverte 1. Découvrir WIMS (I) Un internaute désire découvrir
Plus en détailDescription des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013
Exemple d utilisation du gestionnaire de conception Description des pratiques à adopter pour la mise à jour du layout en utilisant le gestionnaire de conception de Sharepoint 2013 6, rue de l Etang, L-5326
Plus en détailTP 1. Prise en main du langage Python
TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer
Plus en détailFailles des applications Web. Ce document est extrait du travail de diplôme de M. DIZON dans l état.
Failles des applications Web Ce document est extrait du travail de diplôme de M. DIZON dans l état. 1 Introduction...1 2 Contournement de validation javascript...2 2.1 Introduction...2 2.2 Principe de
Plus en détailTP JAVASCRIPT OMI4 TP5 SRC1 2011-2012
TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE
Plus en détailFormulaire pour envoyer un mail
Formulaire pour envoyer un mail AVERTISSEMENT : Ce tuto est une compilation de plusieurs sources trouvées sur internet, dont les références sont données à la fin de cet article. Le but de ce tutoriel n'est
Plus en détailGuide d utilisation. Version 1.1
Guide d utilisation Version 1.1 Guide d utilisation Version 1.1 OBJECTIF LUNE Inc. 2030 boulevard Pie-IX, bureau 500 Montréal (QC) Canada H1V 2C8 +1 514-875-5863 sales@ca.objectiflune.com http://captureonthego.objectiflune.com
Plus en détailIntroduction aux concepts d ez Publish
Introduction aux concepts d ez Publish Tutoriel rédigé par Bergfrid Skaara. Traduit de l Anglais par Benjamin Lemoine Mercredi 30 Janvier 2008 Sommaire Concepts d ez Publish... 3 Système de Gestion de
Plus en détailSQL MAP. Etude d un logiciel SQL Injection
Introduction Ce TP a pour but d analyser un outil d injection SQL, comprendre les vulnérabilités d une BD et de mettre en œuvre une attaque par injection SQL. Prise en main du logiciel SQLMap est un outil
Plus en détailPrésentation du PL/SQL
I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur
Plus en détailGuide d utilisation 2012
Guide d utilisation 2012 Tout ce dont vous avez besoin pour bien démarrer REACOM La performance marketing SOMMAIRE Démarrez avec reagiciel Accédez à votre console d administration 4 Gestion internet Aperçu
Plus en détailTolérance aux Fautes des Grappes d Applications J2EE. Applications Internet dynamiques
Application statique Tolérance aux Fautes des Grappes d Applications J2EE Sara Bouchenak Sacha Krakowiak, Noël de Palma, Stéphane Fontaine Projet SARDES INRIA IMAG CFSE'4, 6-8 avril 2005 Tolérance aux
Plus en détailUtiliser un tableau de données
Utiliser un tableau de données OBJECTIFS : - Définir une Base de Données. - Présentation : tableau de données. - Création d un tableau de données - Gestion d un tableau de données. - Trier et Filtrer des
Plus en détailCompte Rendu d intégration d application
ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...
Plus en détailStockage du fichier dans une table mysql:
Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table
Plus en détailChapitre 1 Qu est-ce qu une expression régulière?
Chapitre 1 Qu est-ce qu une expression régulière? Les ordinateurs n ont pas du tout la même conception des textes que nous : pour nous, un texte est un ensemble d idées couchées sur papier. Nous nous en
Plus en détailMise en place d un serveur Proxy sous Ubuntu / Debian
BTS INFORMATIQUE DE GESTION Option Administrateur Réseaux Benoît VERRON Activité n 1 Mise en place d un serveur Proxy sous Ubuntu / Debian Présentation d un Proxy Un proxy (serveur mandataire) est un serveur
Plus en détailManuel utilisateur du logiciel PrestaConnect.
Manuel utilisateur du logiciel. Ce document permet d effectuer l installation et la configuration de, mais également d en apprendre l utilisation des diverses fonctionnalités. Table des matières Prérequis
Plus en détailCours Linux. Cours en ligne Administrateur Systèmes Linux. Académie Libre info@academielibre.fr
Cours Linux Cours en ligne Administrateur Systèmes Linux Académie Libre info@academielibre.fr Programme général du cours Linux MODULE 1 - Fondamentaux Introduction à Linux La procédure de Login et Logout
Plus en détailComparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA
Comparatif CMS Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA Sommaire Introduction : Dans le cadre de notre projet de master première année, il nous a été demandé de développer un moteur de recherche
Plus en détailENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque
1 ENDNOTE X2 SOMMAIRE 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque 2. Manipuler une bibliothèque EndNote 2.1. La saisie
Plus en détailPHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)
PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et
Plus en détailPrésentation du langage et premières fonctions
1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en
Plus en détailSoon_AdvancedCache. Module Magento SOON. Rédacteur. Relecture & validation technique. Historique des révisions
Module Magento SOON Soon_AdvancedCache Rédacteur Hervé G. Lead développeur Magento herve@agence-soon.fr AGENCE SOON 81 avenue du Bac 94210 LA VARENNE ST HILAIRE Tel : +33 (0)1 48 83 95 96 Fax : +33 (0)1
Plus en détailCAHIER DES CHARGES D IMPLANTATION
CAHIER DES CHARGES D IMPLANTATION Tableau de diffusion du document Document : Cahier des Charges d Implantation EVRP Version 6 Etabli par DCSI Vérifié par Validé par Destinataires Pour information Création
Plus en détailMYXTRACTION. 2009 La Business Intelligence en temps réel
MYXTRACTION 2009 La Business Intelligence en temps réel Administration Qui sommes nous? Administration et management des profils Connecteurs Base des données Gestion des variables et catégories de variables
Plus en détailDécouvrir le CMS. et l utiliser dans une approche pro!
Découvrir le CMS et l utiliser dans une approche pro! Cyril THIBOUT Pulsar Informatique SARL créée en 2005 12 personnes www.pulsar-informatique.com Qu est-ce que Joomla? Un des meilleurs CMS opensource
Plus en détailCMS Open Source : état de l'art et méthodologie de choix
CMS Open Source : état de l'art et méthodologie de choix Définition d'un CMS (wikipedia) Les CMS sont une famille de logiciel de conception et de mise à jour dynamique de sites web partageant les fonctionnalités
Plus en détailwebmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09
AISL - Architecture et Intégration des Systèmes Logiciels - 2011-2012 webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09 Administrer un serveur et
Plus en détailJoomla! Création et administration d'un site web - Version numérique
Avant-propos 1. Objectifs du livre 15 1.1 Orientation 15 1.2 À qui s adresse ce livre? 16 2. Contenu de l ouvrage 17 3. Conclusion 18 Introduction 1. Un peu d histoire pour commencer... 19 1.1 Du web statique
Plus en détailNote de synthèse. Développement web sur le CMS Prestashop. Stage du 17 mai au 25 juin 2010. Entreprise decoratzia.com 15 rue Erlanger 75016 - Paris
BENCHETRIT Michaël BTS IG 2 ème année Brevet de Technicien Supérieur Informatique de Gestion Option : Développeur d applications Session 2011 Note de synthèse Développement web sur le CMS Prestashop Stage
Plus en détailClasse ClInfoCGI. Fonctions membres principales. Gestion des erreurs
Utilisation des classes de PourCGI par Michel Michaud, version 2002-11-23 Les fichiers PourCGI.h et PourCGI.cpp rendent disponibles deux classes et une fonction libre qui permettent de faire facilement
Plus en détailContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.
ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. - 1 - PREAMBULE Les conditions générales d utilisation détaillant l ensemble des dispositions applicables
Plus en détailGOOGLE ANALYTICS. Ajout du code de suivi sur PowerBoutique. Ajout du code de suivi Google Analytics. Page 1 / 7 TUTO / GOOGLE ANALYTICS
Ajout du code de suivi Google Analytics Page 1 / 7 I. Création du compte sur Google Analytics 1. Connectez-vous à www.google.fr 2. Entrez «Google Analytics» dans la barre de recherche. 3. Cliquez sur le
Plus en détail