Outils pour utilisateurs

Outils du site


php

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

php [2016/02/15 19:22]
luc créée
php [2018/10/13 20:32]
Ligne 1: Ligne 1:
- 
-<?php ... ?> inclure du code php dans du code html (enregistrée en .php) 
- 
-<?php include("menu.php"); ?> inclure une autre page php dans cette page 
- 
- 
-------------- 
-- VARIABLES - 
-------------- 
-$variable une valeur est toujours précédée d'un '$' 
- 
--- CONCATANATION -- 
-<?php les " permettent d'insérer une variable au milieu du texte (' ne le permet pas) 
-$age_du_visiteur = 17; 
-echo "Le visiteur a $age_du_visiteur ans"; 
-?> 
-<?php méthode alternative, à préferer 
-$age_du_visiteur = 17; 
-echo 'Le visiteur a ' . $age_du_visiteur . ' ans'; 
-?> 
- 
--- TRANSCODAGE -- 
-$variable1 = (int) $variable2 ; pour forcer la variable 1 en int, si pas possible (ex: string), alors 0.. 
- 
--------------- 
-- CONDITIONS - 
--------------- 
-if (== AND > OR <  >=  <=  !=) 
-{ 
- ... 
-} 
-elseif 
-{ 
- ... 
-} 
-else 
-{ 
-} 
---- 
-<?php astuce qui permet d'insérer facilement du code php sans la fonction echo 
-if ($variable == 23) 
-{ 
-?> 
-<strong>Bravo !</strong> Vous avez trouvé le nombre mystère ! 
-<?php 
-} 
-?> 
---- 
-switch ($note) // on indique sur quelle variable on travaille 
- 
- case 0: // dans le cas où $note vaut 0 
- echo "Tu es vraiment un gros Zér0 !!!"; 
- break; 
- defaut: 
- echo '...'; 
-} // ne marche pas avec les comparaison > == etc.. 
- 
------------ 
-- BOUCLES - 
------------ 
-while (condition) 
-{ 
- //instructions 
-} 
-for ( $i=1 ; $i<=100 ; $i++) 
-{ 
- //instructions 
-} 
- 
-------------- 
-- FONCTIONS - 
-------------- 
--- EXEMPLE DE FONCTIONS PRATIQUES -- 
-strlen($phrase) retourne la longueur d'une chaine de caractère 
-str_replace('c','d',$chaine) remplace une chaine de caractère par une autre 
-strtolower($chaine) convertit la chaine en miniscule 
-date('Y'/m/d/H/i) renvoie l'année, le mois, le jour, l'heure, la minute 
- 
--- CREATION DE FONCTION -- 
-function Nom(paramètres) 
-{ 
- //Instructions 
-} 
- 
------------- 
-- TABLEAUX - 
------------- 
-$variable = array ('',''..) on décrit le tableau ds son intégralité en une seule fois 
-$variable[0] = '..'; on choisi le contenu de chaque case 
-$variable[] = .. ; on laisse php créer la numérotation 
-echo $variable[i] ; on doit tjs préciser la case pour exploiter les infos 
- 
--- TABLEAU ASSOCIATIF -- 
-$coordonnees = array ( création du tableau asociatif 
-    'prenom' => 'François', 
-    'nom' => 'Dupont'); 
-$coordonnees['prenom'] = 'François'; aute moyen de créer un tableau associatif 
-echo $coordonnees['ville']; utilisation du tableau 
- 
--- PARCOURIR UN TABLEAU -- 
-utiliser une boucle for 
-foreach($prenoms as $element) {..} le contenu de chaque ligne du tableau est stocké dans $element 
-foreach($coordonnees as $cle => $element) pour récupérer la clé et l'élement 
- 
--- AFFICHER RAPIDEMENT UN TABLEAU -- 
-echo '<pre>'; il faut rajouter les balises <pre> pour avoir les retours à la ligne entre chaque élément du tableau 
-print_r($coordonnees); 
-echo '</pre>'; 
- 
--- RECHERCHE DANS UN TABLEAU -- 
-array_key_exists vérifier si une clé existe dans le tableau 
-in_array vérifier si une valeur existe dans le tableau 
-array_search pour récupérer la clé d'une valeur dans un tableau 
- 
------------------------------------------------- 
-- TRANSMETTRE DES DONNEES D'UNE PAGE A L'AUTRE - 
------------------------------------------------- 
--- AVEC UNE URL -- 
-page.php?param1=valeur1&param2=valeur2 Concept 
-'&' '&amp' en HTML, '&' doit être écrit '&amp' dans les href 
-$_GET['param1'] la variable $_GET[] contient les valeurs écrites dans l'url 
-isset($_GET[]) fonction qui teste si la variable existe 
- 
--- AVEC UN FORMULAIRE -- 
-$_POST['nom'] procéder aux précautions d'usage concernant des infos venant de l'utilisateur 
- 
--- ECHAPPER DU CODE HTML -- 
-htmlspecialchars($_POST[]) fonction php qui dit fait que les balises HTML contenues dans $_POST[] ne s'executent pas, mais sont affichées comme du texte 
-strip_tags() fonction qui retire les balises HTML au lieu de les executer (ou les afficher par htmlspecialchars() ) 
- 
--- FICHIER PAR FORMULAIRE -- 
-$_FILES['nom'] le fichier est stocké dans un dossier temporaire, il faut le "vérifier" avant de le stocker définitivement : 
-$_FILES['nom'][attribut] on utilise les attributs suplémentaires suivants : 
-name nom du fichier 
-type indique le type de fichier, par exemple image/gif 
-size indique la taille en octet (pas plus de 8Mo, limité par php ..) 
-tm_name contient l'emplacement temporaire 
-error contient le code d'erreur de transfert, 0 = pas d'erreur 
-pathinfo($_FILE[][name]) renvoie un array avec le nom et l'extension, ds la va 
-$infosfichier = pathinfo($_FILES['monfichier']['name']); 
-$extension_upload = $infosfichier['extension']; 
-$extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png'); 
-if (in_array($extension_upload, $extensions_autorisees)); 
-move_upload_file() lorsque tt est bon, on déplace le fichier vers son emplacement définitif 
- 
---------------------------- 
-- VARIABLES SUPERGLOBALES - 
---------------------------- 
--- SESSION -- 
--- COOKIES -- 
- 
--------------------------------- 
-- LIRE ET ECRIRE DS UN FICHIER - 
--------------------------------- 
--- OUVRIR ET FERMER LE FICHIER -- 
-$monfichier = fopen('nomfichier',attribut) permet d'ouvrir le fichier 
-fclose($monfichier) permet de fermer le fichier 
-attribut peut prendre les valeurs suivantes : 
-r lecture seule 
-r+ lecture/ecriture 
-a écriture seule (si le fichier n'existe pas, il est créé !) 
-a+ ecriture/lecture (fichier créé si inexistant) 
- 
--- LIRE -- 
-fgetc() lire caractère par caractère 
-fgets() lire ligne par ligne 
- 
--- ECRIRE -- 
-fputs() écrit une ligne dans le fichier 
- 
--- LOCALISATION DS LE FICHIER -- 
-il y a un curseur qui indique à php ou on en est ds le fichier, lecture et ecriture utilise le même curseur 
-fseek($monfichier, 0) repositionne le curseur au début 
- 
--------------------------------------- 
-- INTERAGIR AVEC UNE BASE DE DONNEES - 
--------------------------------------- 
-on utilisera PDO, en utilisant de la POO 
--- SE CONNECTER A LA BDD -- 
-$bdd = new PDO('mysql:host=localhost;dbname=test','root',''); 
-et pour tester la présence d'erreur (et ne pas les afficher par défaut sur la page : 
-try 
-{ 
- $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; 
- $bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '',$pdo_options); 
-} 
-catch (Exception $e) 
-{ 
- die('Erreur : ' . $e->getMessage()); 
-} 
- 
--- EFFECTUER UNE REQUETE (LIRE DES DONNEES) -- 
-$reponse = $bdd->query('Tapez votre requête SQL ici'); retourne la réponse de Mysql, inexploitable directement en php 
-$donnees = $reponse->fetch(); parcourt la requête, ligne par ligne (curseur virtuel, boucle...) 
-while ($donnees = $reponse->fetch()) fetch() renvoie false lorsqu'il n'y a plus de données 
-{ 
- $donnees['nomColonne']; 
-} 
-$reponse->closeCursor(); indique que la requête est terminée, ce qui permet d'effectuer une autre requete sans encombre 
- 
--- REQUETE AVEC VARIABLE METHODE SECURISEE n°1 : ? -- 
-$req = $bdd->prepare('SELECT nom FROM jeux_video WHERE possesseur =?'); 
-$req->execute(array($_GET['possesseur'])); 
-il est possible de mettre plusieurs ?, il faut alors mettre plusieurs variables dans array(xx,yy) 
- 
--- REQUETE AVEC VARIABLE METHODE SECURISEE n°2 : marqueur nominatif -- 
-$req = $bdd->prepare('SELECT nom, prix FROM jeux_video WHERE possesseur = :possesseur AND prix <= :prixmax'); 
-$req->execute(array('possesseur' => $_GET['possesseur'], 'prixmax'=> $_GET['prix_max'])); 
-il faut bien mettre les ':' dans la préparation de la requête devant le marqueur. 
-plus besoin des les donner dans l'ordre :) 
- 
--- ECRIRE DANS UNE BDD -- 
-$bdd->exec('requete Mysql'); 
- 
--- ECRIRE AVEC UNE VARIABLE -- 
-mêmes fonctions et mêmes méthodes que pour lire avec une variable 
- 
- 
- 
-echo mysql_error(); 
- 
- 
- 
- 
------------------------------- 
-- ENTRE NAVIGATION ET SCRIPT - 
------------------------------- 
-header('Location: page.php'); permet de retourner à la page citée 
- 
- 
- 
- 
  
php.txt · Dernière modification: 2018/10/13 20:32 (modification externe)