web:php:toc
Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
web:php:toc [2015/08/01 01:42] – modification externe 127.0.0.1 | web:php:toc [2022/12/09 20:35] (Version actuelle) – [Divers] sgariepy | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== PHP ====== | ====== PHP ====== | ||
- | * Faire des [[web: | ||
- | * [[web: | ||
- | ====== Architecture trois tiers ====== | ||
- | | + | |
- | - Client-serveur | + | |
- | - Architecture 3-tiers | + | |
- | - Serveur web qui fait le traitement | + | |
- | - Clients légers (//thin client//) / navigateur | + | |
- | - Serveur de base de données | + | |
- | - Architecture n-tiers : | + | |
- | - clients légers (couche client) | + | |
- | - Couche présentation -> seveur web (pilotage de l' | + | |
- | - Couche données | + | |
- | ====== | + | ====== |
- | Pour développer des applications web avec PHP, nous avons besoin de trois éléments : | + | |
- | * Serveur web (Apache) avec interpréteur PHP | + | |
- | * SGBD (MySQL) | + | |
- | * Client (Navigateur) | + | |
- | + | ||
- | Plusieurs suites intègrent les éléments nécessaires au développement (sauf le navigateur), | + | |
- | ====== Les tableaux ====== | + | * [[web: |
+ | * [[web: | ||
+ | ====== Frameworks ====== | ||
+ | * [[web: | ||
+ | * [[web: | ||
+ | * [[web: | ||
- | ====== Interaction avec le client ====== | ||
- | L' | ||
- | ===== GET ===== | ||
- | Les données envoyées en '' | ||
- | ===== POST ===== | + | ====== Bases de données ====== |
- | Les données envoyées en '' | + | |
- | Une méthode | + | * [[web: |
- | < | + | * [[web:php: |
- | if(array_key_exists(' | + | |
- | </ | + | |
- | ===== ISSET ===== | + | ====== Outils pour le développement PHP ====== |
- | <code php> | ||
- | if (isset($var)) { //code } | ||
- | </ | ||
+ | * Pour utiliser avec Visual Studio, [[http:// | ||
- | ====== Programmation modulaire ====== | ||
- | Des parties de pages, par exemple l' | ||
- | ====== | + | ====== |
- | La manipulation des bases de données se fait en plusieurs étapes : | + | |
- | - Ouvrir une connexion | + | |
- | - Sélectionner la base de donnée | + | |
- | - Faire une ou plusieurs requêtes | + | |
- | - Fermer la connexion | + | |
- | ===== Ouvrir une connexion ===== | + | * [[web: |
+ | * [[web: | ||
- | <code php> | ||
- | $connexion = mysql_connect(" | ||
- | </ | ||
+ | ====== Ressources ====== | ||
+ | * [[http:// | ||
- | |||
- | |||
- | ====== Gestion de session ====== | ||
- | |||
- | |||
- | ===== COOKIES ===== | ||
- | |||
- | |||
- | <code php> | ||
- | <?php | ||
- | $value = ' | ||
- | setcookie(" | ||
- | setcookie(" | ||
- | setcookie(" | ||
- | ?> | ||
- | |||
- | <?php | ||
- | // Afficher un cookie | ||
- | echo $_COOKIE[" | ||
- | echo $HTTP_COOKIE_VARS[" | ||
- | // Une autre mÈthode pour afficher tous les cookies | ||
- | print_r($_COOKIE); | ||
- | ?> | ||
- | </ | ||
- | |||
- | |||
- | |||
- | ====== Gestion de session ====== | ||
- | Le HTTP est un protocole sans état ou en mode non-connecté. | ||
- | |||
- | ===== Créer une session ===== | ||
- | La première page doit normalement créer une session et les autres y participeront. | ||
- | <code php> | ||
- | session_start(); | ||
- | </ | ||
- | |||
- | ===== Fermer la session ===== | ||
- | Pour fermer ou détruire une session, il faut que la page actuelle participe à la session. | ||
- | <code php> | ||
- | session_destroy(); | ||
- | </ | ||
- | |||
- | ===== Pour utiliser la session ===== | ||
- | On utilise le tableau '' | ||
- | |||
- | <code php> | ||
- | $_SESSION[' | ||
- | $_SESSION[' | ||
- | </ | ||
- | |||
- | On peut supprimer une entrée dans la session. | ||
- | <code php> | ||
- | unset($_SESSION[' | ||
- | </ | ||
- | |||
- | ===== session id ===== | ||
- | |||
- | |||
- | ===== session timeout ===== | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | ====== Fonctions utiles ====== | ||
- | |||
- | ===== header() ===== | ||
- | <code php> | ||
- | header(" | ||
- | </ | ||
- | |||
- | |||
- | ====== Classes ====== | ||
- | |||
- | ===== Exemple de classe complète ===== | ||
- | <code php> | ||
- | /** | ||
- | * Représente un employé. | ||
- | | ||
- | * < | ||
- | | ||
- | * @name myUpload | ||
- | * @author Nom Auteur < | ||
- | * @link | ||
- | * @copyright Nom Auteur 2009 | ||
- | * @version 1.0.0 | ||
- | * @package Employe.class | ||
- | | ||
- | |||
- | class Employe { | ||
- | |||
- | |||
- | public function __construct($firstName, | ||
- | $this-> | ||
- | $this-> | ||
- | $this-> | ||
- | } | ||
- | |||
- | public function __toString() { | ||
- | return " | ||
- | } | ||
- | } | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | </ | ||
- | |||
- | ===== Constructeur et Destructeur ===== | ||
- | |||
- | Le constructeur est une méthode réservée qui est exécutée automatiquement, | ||
- | |||
- | La méthode constructeur n' | ||
- | |||
- | <code php> | ||
- | /** | ||
- | * Constructeur | ||
- | * | ||
- | * < | ||
- | * @name Employe:: | ||
- | * @return void | ||
- | */ | ||
- | public function __construct() { | ||
- | } | ||
- | |||
- | /** | ||
- | * Destructeur | ||
- | * | ||
- | * < | ||
- | * | ||
- | * @name Employe:: | ||
- | * @return void | ||
- | */ | ||
- | public function __destruct() { | ||
- | } | ||
- | </ | ||
- | |||
- | Lorsqu' | ||
- | |||
- | ===== Propriétés ===== | ||
- | |||
- | <code php> | ||
- | /** | ||
- | * @var (String) | ||
- | * @desc Nom de l' | ||
- | */ | ||
- | private $nom; | ||
- | </ | ||
- | |||
- | ===== Méthodes ===== | ||
- | |||
- | <code php> | ||
- | /** | ||
- | * Crée le code de l' | ||
- | * | ||
- | * < | ||
- | * | ||
- | * @name Employe:: | ||
- | * @return String | ||
- | */ | ||
- | private function createCode() { | ||
- | return $this-> | ||
- | } | ||
- | |||
- | /** | ||
- | * Détermine le nom complet de l' | ||
- | * | ||
- | * < | ||
- | * | ||
- | * @name Employe:: | ||
- | * @param $firstname | ||
- | * @param $lastname | ||
- | * @return string | ||
- | */ | ||
- | public function setFullName($firstname, | ||
- | $this-> | ||
- | $this-> | ||
- | } | ||
- | </ | ||
- | |||
- | ===== Utilisation de la classe ===== | ||
- | |||
- | <code php> | ||
- | <?php | ||
- | include(" | ||
- | |||
- | $employe = new Employe(); | ||
- | $employe-> | ||
- | $employe-> | ||
- | |||
- | $nom_complet = $employe-> | ||
- | ?> | ||
- | </ | ||
- | |||
- | |||
- | ===== Méthodes magiques ===== | ||
- | |||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | |||
- | ====== Chaines de caractères ====== | ||
- | |||
- | ===== Longueur d'une chaine ===== | ||
- | |||
- | |||
- | <code php> | ||
- | <?php | ||
- | $titre = 'Le Wiki de Stéphane Gariépy'; | ||
- | echo strlen($titre); | ||
- | ?> | ||
- | </ | ||
- | |||
- | < | ||
- | |||
- | ===== Accéder à un caractère précis ===== | ||
- | |||
- | L' | ||
- | |||
- | <code php> | ||
- | <?php | ||
- | $texte = ' | ||
- | echo $texte{1}; // Affiche o | ||
- | ?> | ||
- | </ | ||
- | |||
- | ===== Sous-chaine ===== | ||
- | |||
- | '' | ||
- | |||
- | ===== ASCII ===== | ||
- | Il est possible d' | ||
- | |||
- | <code php> | ||
- | <?php | ||
- | echo ord(' | ||
- | echo chr(97) ; // Donne a | ||
- | ?> | ||
- | </ | ||
- | |||
- | ====== Téléchargement de fichiers ====== | ||
- | |||
- | Permettre le téléchargement de fichiers vers un serveur en utilisant PHP n'est pas très compliqué. | ||
- | |||
- | Quand le code du téléchargement est intégré à un site, il faut aussi créer un sous-répertoire du même nom de la variable '' | ||
- | |||
- | <code html|index.html> | ||
- | < | ||
- | <html xmlns=" | ||
- | < | ||
- | <meta http-equiv=" | ||
- | < | ||
- | </ | ||
- | |||
- | < | ||
- | |||
- | <form method=" | ||
- | < | ||
- | | ||
- | < | ||
- | </ | ||
- | |||
- | </ | ||
- | </ | ||
- | </ | ||
- | |||
- | <code php|upload.php> | ||
- | <?php | ||
- | $dossier = ' | ||
- | $fichier = basename($_FILES[' | ||
- | $taille_maxi = 10000000; | ||
- | $taille = filesize($_FILES[' | ||
- | $extensions = array(' | ||
- | $extension = strrchr($_FILES[' | ||
- | //Début des vérifications de sécurité... | ||
- | if(!in_array($extension, | ||
- | { | ||
- | | ||
- | } | ||
- | if($taille> | ||
- | { | ||
- | | ||
- | } | ||
- | if(!isset($erreur)) //S'il n'y a pas d' | ||
- | { | ||
- | //On formate le nom du fichier ici... | ||
- | | ||
- | ' | ||
- | ' | ||
- | | ||
- | | ||
- | { | ||
- | echo ' | ||
- | } | ||
- | else //Sinon (la fonction renvoie FALSE). | ||
- | { | ||
- | echo 'Echec de l\' | ||
- | } | ||
- | } | ||
- | else | ||
- | { | ||
- | echo $erreur; | ||
- | } | ||
- | ?> | ||
- | </ | ||
- | |||
- | |||
- | Source : [[http:// | ||
- | |||
- | |||
- | |||
- | ====== JSON ====== | ||
- | |||
- | ===== Obtenir les données ===== | ||
- | <code php> | ||
- | $jsonurl = " | ||
- | $contents=file_get_contents($jsonurl); | ||
- | </ | ||
- | |||
- | ===== Décode ===== | ||
- | <code php> | ||
- | $json = ' | ||
- | |||
- | $obj = json_decode($json); | ||
- | print $obj-> | ||
- | </ | ||
- | Source : http:// | ||
- | |||
- | ====== PDO ====== | ||
- | |||
- | * http:// |
web/php/toc.1438386138.txt.gz · Dernière modification : 2022/02/02 00:43 (modification externe)