Hébergement du site en PHP et Mysql par WDMédia-hébergement
Vous aussi adpotez les éléPHPants de Vincent Pontier !  
CONCOURS
 
 
PLUS DE PHP
 
 
PLUS DE JAVASCRIPT
 
COMMENT CA MARCHE
 
 
EXPLIQUE-MOI
 
 
NEWS LETTER
 

 
PARTENAIRES
 
Découvrez scriptsphp.org
Découvrez phpteam.net
Tout sur les expressions régulières
IE sucks :-)
 
DESIGN DU SITE
 
Introduction
Tuto écrit par LionZion, revu en août 2004 par Molokai et Raf

Qu'est-ce que PHP ?
PHP est un langage de programmation qui s'intègre dans vos pages HTML. Il permet entre autres de rendre automatiques des tâches répétitives, notamment grâce à la communication avec une base de données (utilisation la plus courante de PHP). Le but des exercices de phpDébutant est de vous apprendre à maîtriser les bases de ces deux outils (PHP et base de données), afin que vous puissiez élaborer vos propres applications.
Mais, avant de continuer, il est bon d'expliquer comment se déroule une requête HTTP : en clair que se passe-t-il lorsque vous tapez une adresse dans votre navigateur, où interviennent PHP et MySQL (la base de données), et les conséquences que cela implique.
Voici, en simplifiant, ce qu'il se passe lorsque vous consultez une page html dite statique :
  • Votre navigateur envoie l'adresse URL (Uniform Ressource Locator) que vous avez tapée
  • Le serveur web est un "ordinateur" présent sur l'Internet et qui héberge la page que vous demandez. Sur ce serveur on trouve Apache, logiciel apte à traiter les requêtes HTTP que vous envoyez lorsque vous demandez une page web. Apache va donc chercher le fichier demandé dans son arborescence et renvoie à votre navigateur la page HTML
  • Votre navigateur interprète les différents langages se trouvant dans ce fichier (HTML, JavaScript, CSS, etc ...) et affiche la page.
Maintenant, voyons ce qui se passe lorsque votre page HTML contient du code PHP :
  • Votre navigateur envoie l'adresse que vous avez tapée
  • Le serveur web cherche dans son arborescence si le fichier existe, et si celui-ci porte une extension reconnue comme une application PHP (.PHP, .PHP3, .PHP4 par exemple). Si c'est le cas, le serveur web transmet ce fichier à PHP.
  • PHP parse le fichier, c'est-à-dire qu'il va analyser et exécuter le code PHP qui se trouve entre les balises <?php et ?>. Si ce code contient des requêtes vers une base de données MySQL, PHP envoie la requête SQL. La base de données renvoie les informations voulues au script qui peut les exploiter (pour les afficher par exemple).
  • PHP continue de parser la page, puis retourne le fichier dépourvu du code PHP au serveur web.
  • Le serveur web renvoie donc un fichier ne contenant plus de PHP, donc seulement du HTML au navigateur qui l'interprète et l'affiche.
Vous remarquez donc que PHP s'exécute côté serveur. Il n'y a plus aucune trace du code PHP lorsque vous regardez le code source de la page dans votre navigateur PHP.
La base de données la plus couramment utilisée avec PHP est sans aucun doute MySQL. A quoi sert une base de données ? Lorsque vous allez produire des informations dans votre script PHP, vous devez les stocker quelque part. Si ce n'est pas le cas, elles seront alors perdues lorsque le serveur renverra la page html au client (votre navigateur). Pour les stocker, il existe deux solutions: la première consiste à les enregistrer dans un fichier texte sur le serveur (quelque part dans l'arborescence de votre hébergement), la seconde à les enregistrer dans une base de données. La sauvegarde dans un fichier texte n'est pas l'idéal, notamment lorsque vous souhaitez chercher, modifier ou supprimer une partie de l'information que vous stockez. Les bases de données ont été conçues dans cette optique-là. Vous verrez dans quelques exercices comment SQL permet de traiter l'information.
Utiliser PHP sur son ordinateur :
Pourquoi installer PHP sur son ordinateur ? Pour tester vos script PHP, vous allez être amené à les envoyer sur votre hebergeur, sur Internet. Cependant il devient vite très lourd de sans cesse renvoyer ces fichiers par FTP. C'est pourquoi installer un serveur web sur son ordinateur est utile, et permet de tester ses scripts plus souplement. Concrètement, votre ordinateur sera à la fois client et serveur. Ainsi vous pourrez programmer en PHP sans avoir besoin d'être connecté à Internet, ce qui peut être utile pour les personnes ne disposant pas de connexions illimitées.
Alors que pour tester des pages web html en local, il suffit d'ouvrir le fichier dans un navigateur, il faut un serveur web sur votre PC local pour tester une page PHP. Pour cela, il existe plusieurs utilitaires très pratiques qui installeront Apache, le serveur web le plus utilisé, PHP, MySQL . Leur installation et son utilisation sont très simples et détaillées. Les plus connus sont :
Si vous êtes sous linux, la plupart des distributions (RedHat, Mandrake, etc ...) installent par défaut Apache, PHP et MySQL. Un article sur Lea-linux indique comment installer Apache, PHP et Mysql si cela n'a pas été fait. Il se trouve ici. De plus, une application similaire à EasyPHP existe pour Linux, il s'agit de Linux Easy Installer.
De plus, la documentation officielle (cf lien ci-après) contient une partie consacrée à l'installation.
Quel outil pour faire du PHP ?
Pour faire du PHP, il ne vous faut rien d'autre qu'un simple éditeur de texte. Vous en trouverez une liste ici ainsi qu'un comparatif plutôt complet ici.

Mais l'outil le plus indispensable est certainement la documentation officielle. Celle-ci est disponible ici. Elle contient la description complète des fonctions, la syntaxe de PHP, comment l'installer ... C'est une mine d'or, prenez le temps d'y jeter un oeil, et en cas de doute c'est ici que vous devez chercher en premier.
Enfin sachez utiliser ces merveilleux outils que sont les moteurs de recherche, et plus particulièrement Google. En cherchant bien vous trouverez facilement des ressources (documentation, tutorial, article, ...) dont vous aurez besoin.
Le but pour vous est de pouvoir être autonome lorsque vous developperez et de savoir se débrouiller seul face à un problème.
Notions essentielles !
Il est très important de comprendre ce qui suit :
  • Il faut bien distinguer le client et le serveur (imaginez tout bêtement la scène dans un bar). Votre navigateur est le client. C'est lui qui demande la page web que vous avez entrée. Le serveur est l'ordinateur sur l'Internet qui héberge cette page web. PHP s'exécute donc côté serveur. Cependant, quand PHP envoie une requête SQL au serveur MySQL, il est alors client, vous saisissez ? :)
    En voici quelques conséquences :
    • Tout ce qui a trait à la présentation de la page (couleur du texte, etc..) est à faire en HTML et CSS, exécutés côté client. PHP n'a rien à voir avec le design de votre page
    • Tout ce qui touche au comportement du navigateur est du domaine du JavaScript, lui aussi exécuté par le client
    • L'interêt de PHP est de générer du HTML ou du Javascript dynamiquement. Le travail effectué avec PHP sur votre page est totalement invisible pour le visiteur.
  • Le SQL est un langage a part entière de PHP, il ne faut surtout pas confondre les deux. C'est MySQL qui parse (c'est à dire analyse et exécute) votre code SQL, PHP ne fait qu'envoyer une requête au serveur MySQL
  • PHPMyAdmin n'est pas une base de données ! Il s'agit simplement d'un script PHP qui permet d'administrer vos bases de données MySQL
Exemples et contre-exemples
Voyons maintenant des contre-exemples :
  • Je souhaite qu'une pop-up s'ouvre quand la page se charge.
    Ici, PHP n'est pas la solution. Vous devez utiliser un script qui soit exécuté par le navigateur car c'est lui qui gère l'ouverture des pop-up. Le langage JavaScript est fait pour cela.
  • Je souhaite connaître la résolution de l'écran du visiteur afin de faire des statistiques.
    Itou, PHP ne peut pas gérer celà car il s'exécute côté serveur.
  • Je souhaite faire un chat en php.
    En effet il n'est pas impossible de réaliser un script de chat, il en existe d'ailleurs plusieurs. Cependant, les limitations du protocole HTTP font que ce n'est vraiment pas souple et agréable à utiliser. Le mieux reste d'utiliser IRC.
  • Je souhaite avoir mon café prêt tous les matins à 7 heures.
    Désolé, je crois que cela ne va pas être possible :)
En revanche, voici une liste non-exhaustive des cas où php pourra résoudre vos problèmes :
  • Automatiser la gestion de news, d'articles ou autres éléments de votre site qui ont un caractère répétitif.
  • Réaliser des webmails afin de gérer ses mails partout.
  • Mettre à disposition des autres sites automatiquement des informations de son site (via la format RSS par exemple)
  • Gérer des galeries photos, des annuaires de liens, des sondages, des forums, des moteurs de recherche internes a votre site, etc .. PHP est l'idéal dans ces domaines là.
Un petit tour sur des sites comme phpscripts-fr.net, phpapps.org (en sommeil actuellement) ou encore hotscripts.com vous donnera un aperçu de ce qui peut être fait en PHP.
Le conseil gratuit
Quand vous essaierez de comprendre les exemples du site et que vous voudrez faire un script similaire mais adapté à vos besoins, ne commencez pas à 0. Commencez par essayer l'exemple chez vous en le recopiant tel quel, vérifiez qu'il fonctionne, et ensuite modifiez-le petit bout par petit bout en testant à chaque fois, afin d'arriver à ce que vous souhaitez. C'est valable pour php mais pour n'importe quel autre langage ou problème auquel vous vous attaquez.
Le carnet d'adresse du débutant
Vous voila fin prêt pour commencer à apprendre PHP, bon courage :)


Ajouter une réponse
Nom
Email
Titre

Mise en forme : gras = [b]...[/b], italic = [i]...[/i], souligné = [u]...[/u], citation = [quote]...[/quote], lien = [url]liens_externe[/url] ou [url nom=texte]liens_externe[/url], code source : [code]...[/code]

Mémoriser mon nom et mon email : Oui Non
www.phpdebutant.org © 2014 - L'équipe de phpDebutant - Hébergement : WDMédia-hébergement
DEBUTEZ !
 
  0.  Introduction
  1.  Afficher une phrase ou une image
  2.  Afficher la date et l'heure
  3.  PHP dans du code HTML
  4.  La concaténation
  5.  Récupérer les valeurs d'un formulaire
  6.  Les structures de contrôle
  7.  Ecrire et lire dans un fichier texte
  8.  Les fonctions utilisateurs
  9.  Les variables d'environnement
  10.  Quelques fonctions utiles
  11.  SQL/MySQL (Create, Alter & Drop)
  12.  SQL/MySQL (Insert et Select)
  13.  SQL/MySQL (Delete et Update)
  14.  SQL/MySQL (Where)
  15.  Fonctions PHP pour mySQL
  16.  Interroger une table MySQL
  17.  Alimenter une ou plusieurs tables mySQL
  18.  Les pseudos-frames
  19.  Les sessions php4
  20.  Affichage page par page
  21.  Images dynamiques
  22.  Ca marche pas ?
  23.  Variables globales à OFF
  24.  Les variables dynamiques