Cpm Affiliation : la régie publicitaire au Cpm

Introcduction sur le PHP

Avant d'entamer une lutte sans merci, il est de bon usage de s'informer et de se préparer. Comme l'a probablement dit un très grand homme dont j'ignore le nom et dont je ne peux prouver l'existence, « la moitié du combat se joue pendant sa préparation ».
Au menu du jour, vous trouverez une courte introduction sur PHP et surtout sur le fonctionnement global de celui-ci. Le tout sera agrémenté de quelques lignes sur ce qu'est la programmation et en ce qui concerne dessert, je vous laisse le découvrir.

PHP, le web que-ce donc ?

Le PHP, pour PHP : Hypertext Preprocessor est un langage de programmation. Il y en a beaucoup d'autres, comme le C, le Java, l'OCaml,… mais on peut dire du PHP que c'est un langage de programmation orienté pour le Web, ou encore pour les sites internet.
Pour la petite histoire, le PHP est né de la main de Rasmus Lerdorf en 1994. Au départ très basique, il n'a été rendu public qu'en 1995 sous le nom de PHP/FI. Par la suite, le développement passa des mains de Rasmus Lerdorf à celles de deux étudiants — Zeev Suraski et Andi Gutmans — qui fondèrent par la suite Zend Technologies pour promouvoir PHP. Si vous développez des applications avec PHP, vous entendrez sans aucun doute parler de Zend, que ce soit via leur framework, leur environnement de développement ou encore leur serveur, respectivement Zend Framework, Zend Studio et Zend Server.

Non content d'être un langage de programmation, PHP est un langage interprété. Quand vous utilisez une application, sous Windows par exemple, vous double-cliquez sur le programme pour qu'il se lance ; le programme s'exécute alors, votre ordinateur peut directement exécuter le programme. Pour le PHP, c'est un peu différent. En effet, votre ordinateur ne comprend pas le PHP, il ne sait pas l'exécuter comme vous pouvez le voir à la figure 1.1. Pour que le PHP soit exécuté, il faut que le fichier qui contient le code PHP soit interprété par… l'interpréteur PHP.

Concrètement, l'interpréteur, c'est quoi ? Comme je l'ai dit, votre ordinateur ne peut pas exécuter de code PHP comme il exécute une application classique. Pour que votre code prenne vie, l'interpréteur — qui lui est une application exécutable — va le lire, le traduire en un dialecte intermédiaire — l'Opcode — et finalement demander à votre ordinateur d'exécuter les instructions correspondant à l'Opcode généré comme c'est illustré à la figure 1.2. Vous entendrez à nouveau parler d'Opcode dans la suite de ce cours, ne vous arrêtez donc pas là-dessus pour le moment, sachez juste que ça existe.

 



 

 

 

 

Le Web, comment est-ce que ça fonctionne ?

Avant tout, qu'est-ce que le Web ? Le Web — ou World Wide Web de son nom complet —, c'est le système qui vous permet de lire ce cours, qui vous permet d'accéder à du contenu, des pages d'un site, généralement accessible via Internet. Le Web est souvent confondu avec Internet, mais Internet ne se résumé définitivement pas au Web : bon nombre d'autres systèmes, applications et protocoles utilisent Internet. Il est d'ailleurs assez triste que certaines entités — des entreprises par exemple — se basent sur cette confusion pour faire des offres plus attractives en nous martelant de slogans similaires à « Internet illimité » alors qu'en fait, ils ne nous offrent qu'un accès au Web, et encore, pas toujours très « illimité »… Mais je m'égare, ça n'est pas le sujet.

Le Web fonctionne sur un modèle dans lequel se trouvent deux intervenants : le client et le serveur. Vous pouvez parfaitement faire une comparaison avec un restaurant, c'est tout à fait pertinent et ça donne du bon goût. Quand vous êtes dans un restaurant, tranquillement assis, vous choisissez un plat, sifflez le serveur puis lui dites ce que vous désirez. Une fois la requête du client reçue, le serveur va faire sa popote interne pour finalement délivrer ce que vous avez commandé. Il y a donc deux messages, d'abord une requête du client vers le serveur, puis une réponse du serveur vers le client. Pour un site Web, c'est pareil. Votre navigateur — il joue le rôle de client — va envoyer une requête à un serveur — et plus exactement un serveur Web — qui y répondra après l'avoir traitée. Vous avez une illustration de ce dialogue à la figure 1.3.

 

 

Le serveur Web et l'interpréteur PHP, une histoire d'amour ?

Comme nous l'avons dit précédemment, pour que le PHP puisse vivre, il a besoin de son interpréteur. Un serveur Web n'étant pas un interpréteur PHP, ces deux éléments doivent entrer en relation à un moment donné. Mais non, malheureusement pour nos deux amis, ce n'est pas vraiment une relation amoureuse qu'ils entretiennent, ça serait plutôt une relation maître-esclave, l'esclave étant le pauvre interpréteur.
En fait, le serveur Web peut gérer différentes requête. Vous pouvez par exemple lui demander une image, une page Web statique — c'est-à-dire ne contenant par exemple que du XHTMLet du CSS —, une page Web dynamique — contenant du PHP, du Python, etc. —, un document PDF et bien d'autres choses encore. Lorsque vous lui demanderez ce qui nous intéresse, une page Web contenant du PHP, le serveur Web le saura, il déterminera le type de contenu demandé à partir de la requête. Lorsque le serveur Web recevra une requête faisant intervenir PHP, il appellera l'interpréteur en lui donnant le fichier à interpréter et attendra la réponse de celui-ci qui sera ensuite transmise au client. Tout le monde est ainsi content à la figure 1.4 : le client a reçu ce qu'il attendait, le serveur a délivré le contenu, et l'interpréteur a été sauvagement abusé par le serveur.

 

De ces interactions, nous pouvons déduire quelque chose qui a son importance : le PHP s'exécute du côté du serveur, il ne travaille que quand le serveur doit répondre à la requête, et jamais quand le serveur a déjà répondu à la requête. Si vous désirez afficher une horloge sur votre site Web, horloge qui se mettrait à jour toutes les secondes, serait-ce possible avec PHP ? Non, car l'horloge ne serait visible par le visiteur — l'utilisateur du navigateur Web — que quand le serveur a déjà envoyé la réponse, PHP ne pourrait donc plus intervenir. Pour réaliser cela, et plus généralement pour toutes les interactions entre le visiteur et une page Web déjà envoyée à celui-ci, on passera par un autre langage, le Javascript.

Après ce petit tour d'horizon de ce qu'est le PHP, du fonctionnement du Web et de l'interaction entre le serveur Web et l'interpréteur PHP, passons à ce dont nous aurons besoin pour travailler. Que chacun d'entre vous possède un serveur dédié en antarctique est un peu utopique, nous allons donc installer le serveur Web et PHP sur votre ordinateur. Oui, ça fonctionne, ne vous en faites pas.

Comme serveur Web, nous allons choisir le plus répandu et connu actuellement : Apache HTTP Server ou encore Apache HTTPD. Ce logiciel, ce serveur Web est édité par l'organisation à but non-lucratif éponyme, l'Apache Software Foundation. Cette organisation est également connue pour d'autres projets ainsi que pour leur licence, la licence Apache qui est libre et open-source. Mais avant de procéder à l'installation de ces logiciels, prenons le temps de faire connaissance avec la programmation.

 

 

La programmation c'est quoi ?

La programmation, tantôt qualifiée de mystique, tantôt qualifiée d'incroyablement compliquée, qu'est-ce donc vraiment ? Pour ma part, la programmation, c'est le quotidien. Non pas parce que j'ai le nez collé à mon PC huit heures par jour, mais bien parce que de la programmation, vous en faites au quotidien. Prenons un exemple qui devrait parler à tout le monde : la conduite d'une voiture. Avec une voiture, vous pouvez effectuer quelques opérations de bases, notamment :

  • freiner,
  • avancer
  • et tourner

Il y a d'autres opérations, mais celles-ci suffiront pour l'exemple. Bien heureux dans votre voiture, vous arrivez au boulot, à l'école ou ailleurs si vous le désirez, dans tous les cas l'heure de se garer est arrivée. Par chance, vous trouvez une petite place entre deux voitures comme illustré à la figure 1.5.

 

 

Vous voilà face à un problème, comment rentrer élégamment dans cet emplacement ? Résoudre un problème, y apporter une solution, c'est de la programmation. Et résoudre ce genre de problème, vous le faites tous les jours consciemment ou pas. C'est pour cela que j'aime dire que la programmation, c'est notre quotidien à tous. Pour résoudre ce problème, qu'avons-nous à notre disposition ? À vrai dire, pas grand chose, mais c'est amplement suffisant. Nous disposons en effet de quelques opérations de bases nous permettant de nous déplacer et nous possédons également quelques informations sur le problème, la principale étant que nous avons effectivement la place pour nous garer. Le tout est donc de parvenir à utiliser, à manipuler nos quelques opérations pour résoudre le problème. Le but n'étant pas de faire de vous des as du volant, voici les étapes de la solution représentée à la figure 1.6 :

  1. nous avançons jusqu'à la hauteur de la voiture puis freinons ;
  2. nous tournons les roues vers la gauche ;
  3. nous avançons à l'envers, c'est-à-dire que nous reculons ;
  4. lorsque nous formons un bel angle, nous mettons les roues vers la droite ;
  5. et enfin nous freinons au bon moment pour terminer la manœuvre.

Ce que nous avons fait ici, c'est décrire, énoncer, exprimer la solution à notre problème, et là nous sommes au cœur de ce qu'est la programmation : notre voiture nous offre certains concepts tels que l'accélération de la voiture ou son changement de direction et nous permet d'utiliser ces concepts via des opérations élémentaires telles que avancer ou tourner, ce qui nous permet d'exprimer une solution à un problème. Ces quelques opérations n'ont peut être l'air de rien, mais elles suffisent à exprimer un grand nombre de manœuvres que vous pourriez être amenés à réaliser avec une voiture. Une fois la solution exprimée, il ne reste plus qu'à la mettre en application en utilisant les pédales, volants et autres outils propre à votre voiture.

Un langage informatique, comme le PHP par exemple, fait exactement la même chose que cette voiture : il nous offre certains concepts nous permettant d'exprimer des solutions ainsi que des outils pour traduire ces solutions en code que l'interpréteur pourra faire exécuter. Il faut donc bien comprendre que la programmation n'est pas une seule et unique chose mais bien deux étapes distinctes : la résolution du problème et l'application de la solution. La résolution du problème, c'est la conception du programme, tandis que l'application de la solution, c'est son implémentation, la traduction en code donc.

Nous reviendrons plus tard sur la conception et l'implémentation, l'important c'est que vous reteniez que la programmation se déroule en deux étapes.

Pour apprendre, quelle attitude adopter ?

Si vous décidez de poursuivre ce cours — et j'espère que vous serez nombreux dans ce cas —, quelle attitude adopter ? Comme mon introduction l'a sous-entendu, je ne suis pas ici pour faire du fast-food version programmation. Mon but, ce n'est pas de faire de vous des roxxors pgm de la prog' en 24 heures chrono mais bien d'apprendre, de comprendre. Vous devrez donc parfois être un peu patient avant de voir le fruit de vos efforts.
En ce qui concerne mes explications, je ne vais pas vous prendre pour des abrutis. Bien que nous débutions, nous ne sommes pas des bébés, nous avons la capacité de réfléchir et de nous débrouiller par nous-même. C'est pour cela qu'il m'arrivera souvent de vous lancer un « RTFM » — Read The Fucking Manual — ou la version plus délicate : cherchez par vous-même. Je ne veux pas faire de vous des assistés. Je vous aiderai, je vous guiderai, mais je ne vous donnerai pas tout tout cuit au fond du bec. Vous serez donc sans le moindre doute contraint à un moment ou à un autre de chercher par vous-même. Cette capacité, cette débrouillardise est une qualité très importante, je veux donc que vous l'utilisiez, et pour cela je ne dois évidemment pas faire de vous des professionnels de l'assistanat.

Bien sûr, il arrivera parfois que même en cherchant un certain temps, vous ne trouviez pas de solution. Dans ce cas, vous serez amenés à demander de l'aide, sur les forums du site par exemple. Si vous le faites, ou plutôt, quand vous le ferez, n'oubliez pas certaines choses.

Le titre du sujet

Imaginons que je rencontre un problème et que ma recherche ne m'a rien apporté. Je me rends dans un forum traitant du PHP et je crée un nouveau sujet.
La première chose à laquelle vous devez faire attention, c'est le titre. Il a pour but de décrire votre sujet ; ainsi, les personnes visitant le forum sauront si elles sont susceptibles de vous aider sans avoir à lire le message.

Il est donc impératif de choisir un titre qui décrit votre sujet. Si vous mettez quelque chose comme « Gros problème », « Besoin d'aide urgente », etc., on ne sait absolument pas quel est l'objet du sujet.
Petit détail plutôt amusant, certaines personnes mettent un titre du style « Problème avec PHP ». On ne peut pas dire que ça ne décrit pas le sujet, mais ne trouvez-vous pas logique que dans un forum consacré au PHP on parle de… PHP ?
C'est juste pour dire qu'il est inutile de spécifier que vous parlez de PHP.

On a vu ce qu'il ne fallait pas faire, mais comment choisir un bon titre, finalement ?
Eh bien il n'y a pas de méthode magique, il faut réfléchir. Si j'ai un problème en voulant afficher un texte, qu'est-ce que je pourrais mettre comme titre ?
Si je mets « Problème PHP », ça ne sert à rien. Par contre, un titre comme « Problème pour afficher un texte » est déjà plus explicite, non ?
Vous devez essayer de résumer l'objet du sujet en quelques mots. Si vous faites cela, vous aurez souvent un bon titre. Si vous ne parvenez pas à résumer votre sujet, mettez simplement les mots-clés qui vous apparaissent comme étant les plus pertinents.

Le contenu du sujet

Après le titre vient le contenu du sujet. Le titre est le résumé, le contenu est le corps du sujet.
La première chose qu'on doit voir dans votre sujet, c'est une formule de politesse. Eh oui : moi, quand je ne vois pas de « Bonjour » ou autre, je n'aime pas ça et je ne réponds pas au sujet. La politesse tient en quelques mots, quelques secondes de votre temps, mais beaucoup de gens la négligent. Si je viens chez vous demander du sucre de cette façon : « Donne-moi du sucre », vous allez m'en donner ? Je pense que non.
Maintenant, si je dis : « Bonjour, est-ce que vous pourriez me prêter un peu de sucre ? Merci beaucoup », j'ai déjà plus de chance de pouvoir finir mon gâteau. C'est la même chose quand vous faites un sujet dans un forum. Un brin de politesse vous assurera un accueil plus chaleureux de la part de ceux qui vous aideront.

Le contenu du sujet vient ensuite. Il est indispensable de parler français. Vous devez faire des phrases qui ont du sens, vous devez faire attention à votre orthographe (pas de SMS, pas de kikoulol attitude) et vous devez vous exprimer clairement. Parfois, les gens rédigent tellement mal leur sujet qu'on ne comprend absolument rien à la demande. Et dans ce genre de cas, c'est plutôt difficile d'aider.

Si vous devez mettre du code PHP ou autre dans votre sujet, faites-y également attention ! En effet, certains forums fournissent des outils pour rendre la lecture de celui-ci plus agréable et il est plus aisé d'apporter de l'aide quand le code est plus lisible.
Deuxième chose importante : ne mettez pas un pâté de code…
Il arrive que des gens aient un petit problème, mais la flemme de chercher un peu d'où ça vient : ils nous mettent des centaines de lignes de code. Vous pensez qu'on va les lire ? Si c'est le cas, vous rêvez.
Les visiteurs du forum ne vont pas passer deux heures à essayer de trouver d'où vient l'erreur et cinq minutes à vous répondre. C'est pourquoi vous devez extraire les parties de votre code qui sont responsables de l'erreur. Pour le moment, vous ne savez pas le faire, mais le PHP est bien conçu et il est relativement facile de trouver d'où viennent les erreurs, nous verrons ça plus tard.

Le respect

Dernière chose qui me tient à cœur : le respect envers ceux qui vous aident. Ces personnes utilisent leur temps libre pour vous aider, alors respectez-les. On ne demande pas de faire des courbettes, mais un simple « Merci » quand le problème est résolu fait tellement plaisir. Aussi, n'attendez pas qu'on vous serve la solution sur un plateau d'argent. Dans l'idéal, ceux qui vous aident ne feront que pointer la cause de l'erreur, ils vous donneront des pistes pour la corriger, mais c'est à vous de vous corriger. Ne revenez pas cinq minutes après parce que vous ne comprenez pas ce qu'ils vous disent. Cherchez par vous-mêmes à comprendre ce qu'ils vous signalent, sinon vous ne serez jamais capables de vous en sortir seuls.

 

Infos Plan Partenaires
À propos Webmasters
C.G.U Services Gratuits Annuaire de sites web
Bannières Forum Ionoa

 

Aipoweb est un site édité par ASMOH NetWork  ©

Créer un site gratuit avec e-monsite - Signaler un contenu illicite sur ce site