Cours de Rémi JarjatCours de Rémi Jarjat
  • Liste des cours
  • Culture numérique
  • Git
    • Terminologie
    • Avant de commencer
    • Créer un dépôt (local)
    • Enregistrer des changements
    • Des branches
    • Mise en commun du travail
    • Annuler des changements
    • Réécrire l'historique
    • Des outils pour se simplifier Git
    • Exercices
    • Exemples pratiques
  • Linux
    • Installation
    • Historique
    • Rangement des fichiers
    • Les processus
    • Commandes de base
    • Commandes avancées
    • /linux/6-other-technologies.html
    • Exercices
    • Correction des exercices
  • PHP
    • Environnement de travail
    • Bases du PHP
    • Tests et boucles
    • Procédures et fonctions
    • Interagir avec l'utilisateur
    • La temporisation de sortie
    • PHP Doc et PSR
    • PHP Orienté objet
    • Héritage et objets
    • Factorisation
    • Manipuler la BdD avec PDO (PHP Data Object)
    • Architecture MVC
    • Webservices REST
    • Exercices - Bases
    • Exercices - Séparer en plusieurs fichiers
    • Exercices - POST et SESSION
    • Exercices - Panier et validation
    • Exercices - Objets
    • Exercices - BdD avec PDO
    • Projet - montage d'ordinateurs
    • Projet - Personnages de Jeux de Rôle
  • Symfony
    • Installer Symfony et son environnement de travail
    • Structure et utilisation d'un projet
    • Le routing
    • Les controllers
    • Twig
    • Les services et l'injection de dépendances
    • Doctrine et la BdD
    • Formulaires
    • Les traductions
    • Event listeners/subscribers
    • Connexion et sécurisation
    • Bundles
    • Easy Admin Bundle
    • API Platform
    • Pense-bêtes
    • Symfony au quotidien
    • Travailler avec Docker
    • Projet : annonces de SPA / éleveurs
    • Exercices
  • Javascript
    • Les bases du langage
    • Manipulation logique
    • Le DOM
    • JQuery
    • Ajax
    • Programmation orientée objet
    • Webpack
    • Outils utiles
    • Révisions
  • Serveur Lamp
  • Déploiement
    • Des outils et manières de faire
    • Déploiement par FTP
    • Wordpress
    • Intégrer Git dans le processus
    • GitHub Pages pour déployer facilement
    • Symfony et Angular
  • Docker
  • Intégration continue
  • Sécurité informatique

Interagir avec l'utilisateur

  • Des valeurs dans l'url
  • Des valeurs envoyées par un formulaire
  • La session
  • Les cookies
  • Sécuriser les données

En vidéo :

  • GET et POST permettent de récupérer des actions de l'utilisateur ponctuellement (soumission d'un formulaire, suivi d'un lien avec des paramètres, etc.)
  • Sessions et cookies, permettent de retenir des données à plus ou moins long terme
    • Les sessions durent par défaut 20 minutes ou jusqu'à la fermeture du navigateur
    • Les cookies durent pour la plupart entre 1 mois et 1 an (ou n'ont pas de limite de durée)

Des valeurs dans l'url

  • Valeurs se trouvant dans l'url index.php?bonnet=Classe&matiere=cachemire&logo=
  • Commence par ? et séparées par des &, format cle=valeur
  • Vous pouvez les récupérer dans la superglobale $_GET:
echo $_GET['bonnet']; // Classe
echo $_GET['matiere']; // cachemire
echo $_GET['logo']; // ''

Des valeurs envoyées par un formulaire

  • Valeurs généralement envoyées par un formulaire
  • les clés du tableau correspondent à l'attribut name de vos champs HTML (input, textarea, select, etc.)
  • Vous pouvez les récupérer dans la superglobale $_POST
<form action="" method="POST">
    <label for="matiere">Matière de votre bonnet</label>
    <input type="text" name="matiere" id="matiere" value="cachemire">
    <input type="submit" name="boutonValidation" value="Valider">
</form>
echo $_POST['matiere']; // cachemire
echo $_POST['boutonValidation']; // Valider

La session

La documentation PHP

  • Sert à conserver des informations d'une page à l'autre, jusqu'à fermeture du navigateur (ou 1440 secondes par défaut)
  • Appeler la fonction session_start() au début de toutes les pages pour que la session fonctionne correctement
  • le contenu de la session se trouve dans la variable superglobale $_SESSION
  • On peut y ajouter/modifier/supprimer des éléments en modifiant ce tableau
$_SESSION['login'] = 'unLogin';
echo $_SESSION['login']; 
// etc.

Les cookies

La documentation PHP

  • Servent à conserver des informations sur une durée plus longue
  • Peuvent être un problème de sécurité selon les informations stockées. En effet, s'ils contiennent des données sensibles, celles-ci sont stockées (par défaut) dans un fichier texte dans l'ordinateur de l'utilisateur.
  • On peut créer un cookie avec la fonction setCookie() (documentation)
  • Récupérer le ou les cookies dans la variable superglobale $_COOKIE

Sécuriser les données

Never Trust User Inputs est un adage très couramment utilisé dans la programmation.

Pour des raisons de sécurité, principalement

Dernières mise à jour :
Prev
Procédures et fonctions
Next
La temporisation de sortie