Apprenez à construire avec php: un cours intensif

Table des matières

§1. Introduction

§2-Bonjour tout le monde!

§3-formes

§4-bases de données

§5-Obtenir du contenu de la base de données

§6-Logins et d`authentification

§7 -? Conclusion et lectures

1. Introduction

Quel était votre matière préférée à l`école?

Si vous êtes comme moi, je parie que vous aimiez les arts. Les Humanités. Vous savez, les sujets tournés en dérision par certains comme étant vide de sens et nébuleux dans la nature, mais peu importe que vous aimiez les étudier parce que vous aimé être créatif.

Je parie que vous avez jamais pensé de vos classes de la même façon que vous pensiez de langue anglaise ou art- comme une entreprise purement créative.

C`est dommage. Apprendre à programmer est un peu comme faire une classe de langage créatif. Vous avez une idée, et vous pouvez exécuter que comme bon vous semble. Il est la créativité pure, mais au lieu de Baring votre âme sur le papier, vous êtes commandant un ordinateur pour faire vos enchères. Si vous pouvez le rêver, et si vous pouvez le décrire d`une manière votre ordinateur comprend, vous pouvez le faire.

La façon dont nous parlons aux ordinateurs est par des abstractions appelées langages de programmation. Il y a tout un tas de ces là-bas, chacun avec leurs propres avantages, les inconvénients et les idiosyncrasies vraiment bizarres. Ils sont imparfaits par nature, mais les gens les utilisent pour créer des choses incroyables et merveilleuses.

L`une de ces langues est appelé PHP.

Vous avez peut-être entendu parler avant. Ceci est la langue que Facebook, WordPress et Wikipédia utilisent pour servir des milliards de demandes, tous les jours. Il est la langue de facto utilisé pour enseigner aux gens à programmer pour le web. Il est très bien simple, mais avec brio puissant.

Et dans ce guide, je vais vous apprendre comment vous pouvez l`utiliser pour créer vos propres sites Web.

Avez-vous une idée de démarrage de tueur que vous ne savez pas comment exécuter? Voulez-vous apprendre la langue utilisée pour étendre WordPress? Êtes-vous curieux au sujet de la programmation web? Voulez-vous simplement apprendre les compétences nécessaires pour rester pertinent dans l`économie du savoir moderne, axée sur la technologie-?

Quelle que soit votre motivation, ce livre a pour but de vous enseigner les rudiments de la langue de programmation PHP. Mais d`abord, nous allons avoir un peu d`une leçon d`histoire.

1.1 L`histoire de PHP

Dans l`enfance de l`Internet, les choses étaient un peu ... Eh bien? Appartement.

Sites ne sont pas particulièrement interactifs, et ceux qui ont visité ces sites ont été confrontés à une expérience relativement unidirectionnel. Ajout même les plus simples aspects de la participation des utilisateurs a été incroyablement difficile, laissé dans le domaine des informaticiens et les programmeurs experts.

Et puis Rasmus Lerdorf est venu autour. Ce codeur canadien groenlandais a créé le langage de programmation PHP, ce qui a permis aux gens d`ajouter facilement les plus simples facettes de l`interaction de leurs pages Web. Il était nouveau, il était courageux, et il a fallu presque immédiatement.

Rasmus Lerdorf ne aurait pu prédire l`impact de son idée aurait sur le monde.

Une communauté a commencé à former, avec les programmeurs et les entreprises fournissant volontiers du temps et de l`argent pour alimenter le développement de la langue. Lentement mais sûrement, PHP a commencé poser un sérieux défi à Sun (maintenant Oracle) et Microsoft, qui espéraient gagner du terrain sur le marché-développement web avec leurs plates-formes Java et ASP. La montée du langage de programmation PHP ne pouvait être décrit comme étonnamment rapide.

C`était il y a 20 ans. Un âge, dans le monde informatique. Depuis lors, le langage de programmation PHP est devenu le moyen privilégié pour des millions de programmeurs, qui utilisent PHP dans leur emploi, à participer à l`open source et d`apporter leurs idées à la vie. Il est un aliment de base du monde numérique.

Vous pouvez devenir l`un de ces millions. Ce livre va vous montrer comment.

1.2 qu`allons-nous couvrir?

Ceci est un livre assez court, mais nous allons couvrir beaucoup. En quelques pages, nous allons créer un simple clone de Twitter.

Bien qu`il ne va pas avoir le même ensemble de fonctionnalités et de polissage du site de micro-blogging populaire, mais nous serons en mesure d`afficher 140 messages de caractère avec un compte nous connecter.

1.3 Tout sur LAMP

Maintenant, il faut savoir que PHP est un langage incroyable pour créer des pages Web interactives. Mais on n`a pas parlé de la façon dont nous nous tournons ce code dans un produit réel. Donc, nous allons le faire.

Pour la plupart, le code PHP fonctionne dans un toile serveur. Un serveur web est chargé d`envoyer des pages Web à toute personne qui accède à un nom de domaine spécifique ou une adresse IP.

Le choix le plus commun du serveur Web est le serveur web Apache risiblement populaire. Cette open source, les pouvoirs de projet logiciel multi-plateforme la majorité de l`Internet, avec 45% de tous les sites servant pages du serveur Web Apache. Cependant, il est utile de noter que d`autres serveurs Web disponibles, y compris LightTTPD et IIS de Microsoft.

Cela constitue la deuxième lettre de l`acronyme LAMP, qui signifie Linux, Apache, Mysql et PHP. Nous savons ce que PHP est. Je viens de vous expliquer ce que Apache est. Vous pourriez avoir entendu parler de Linux à un moment donné. Mais quel est le « M » dans la lampe? MySQL.

Parlons de MySQL. Je mettrais de l`argent sur votre site Web ayant pour stocker des informations que votre application Web a rassemblé. De plus, je parie que vous voudriez stocker cette information quelque part qui est structuré, sûr et organisé. Eh oui, vous allez devoir utiliser une base de données, et pour la plupart des MySQL est un choix assez solide. Nous allons en parler plus tard.

Video: Cour 11 : Comment construire les pages de mon site avec PHP

Enfin, nous allons aborder brièvement Linux. La plupart des sites PHP sont servis des systèmes en cours d`exécution populaire, open-source du système d`exploitation Linux. Cependant, vous ne devez pas utiliser Linux comme environnement de développement si vous ne voulez pas. Tout dans ce livre peut être utilisé sur OS X, Windows et Android

Un système d`exploitation, Apache, MySQL et une installation du langage de programmation PHP sont les quatre éléments constitutifs des configurations PHP les plus courantes. Mais comment pouvons-nous nos mains sur eux?

1.4 Configuration de votre environnement de développement

Contrairement à certains langages de programmation, la mise en place d`un environnement de développement PHP est facile. En effet, il y a un certain nombre de paquets qui font tout le dur travail pour vous, et vous épargner les tracas de l`installation de chaque composant (PHP, MySQL et Apache) individuellement.

les fenêtres

La meilleure façon de mettre en place un environnement de développement PHP dans Windows est avec XAMPP par Apache Friends. Ce package comprend MySQL, une copie du langage de programmation PHP et Apache toile serveur, ainsi qu`un panneau de contrôle administratif et plug-ins pour SSL (le protocole utilisé pour chiffrer le trafic sur un réseau), ainsi que l`envoi d`e-mail.

XAMPP est libre et se trouve sur le site d`amis Apache. Il est important de souligner qu`il existe deux versions de XAMPP disponibles. On a un numéro de version 1.8.2 et exécute une version légèrement plus ancienne de langage de programmation PHP, et l`autre a un numéro de version de 1.8.3 et une version récente de PHP. Alors que je vous recommande vivement de télécharger la dernière version, le contenu de ce guide devrait travailler avec les deux.

Linux

Linux est un peu délicat. Il y a un certain nombre de systèmes d`exploitation qui existent sous l`égide « Linux », bien qu`ils puissent gérer l`installation des logiciels de différentes façons.

Si vous utilisez Ubuntu et toute distribution qui utilise les dépôts Ubuntu, vous pouvez exécuter:

sudo apt-get lampe-serveur d`installation ^

Cela installera un serveur LAMP, avec tous les composants nécessaires pour suivre cet article. Ce processus est expliqué plus en profondeur dans cet article, où je vous montre comment installer un serveur LAMP dans le cadre de l`installation de la plate-forme de blogging WordPress.Signé pour l`hébergement Web SSH uniquement? Ne vous inquiétez pas - facilement installer un logiciel WebSigné pour l`hébergement Web SSH uniquement? Ne vous inquiétez pas - facilement installer un logiciel WebJe ne sais pas la première chose à propos d`exploitation Linux à travers sa ligne de commande puissante? Vous inquiétez pas plus.Lire la suite

Ces instructions ne fonctionneront pas sur les distributions qui utilisent YUM ou RPM pour leur gestion des paquets, avec les instructions pour la mise en place d`un serveur LAMP différent de manière significative. Je vous recommande de jeter un oeil à la documentation fournie avec votre système d`exploitation.

Cependant, il y a une autre option. Rappelez-vous XAMPP? Eh bien, il se trouve que il est livré avec le support de Linux, et peut être téléchargé ici. Cependant, lorsque cela est possible, je recommande fortement que vous installez votre serveur LAMP par votre gestionnaire de paquets.

Il y a quelques raisons à cela. Tout d`abord, il serait un peu mieux intégré à votre système d`exploitation et peut être facilement mis à jour. En outre, l`installation de PHP via la ligne de commande est une bonne pratique si jamais vous déployer votre application sur un serveur VPS.Pourquoi vous devriez utiliser un VPS lieu de l`hébergement partagé pour WordPressPourquoi vous devriez utiliser un VPS lieu de l`hébergement partagé pour WordPressLire la suite

OS X

J`utilise OS X comme ma principale plate-forme de développement. J`aime la flexibilité qu`il me donne, et la mise en place d`un environnement de développement PHP dans OS X est incroyablement facile.

Je suis tout à fait partielle MAMP. Cela se décline en deux produits, l`un étant libre et l`autre coûte 59 $ USD (ou 39 €). Cependant, la version gratuite est plus que suffisant pour les besoins du présent guide.

Obtenir MAMP est une question de saisir un fichier ZIP à partir du site Web, double-cliquant sur un fichier pkg et en appuyant sur « continuer » aussi souvent que nécessaire.

Comme précédemment, il est tout à fait possible pour vous de créer un environnement de développement PHP en utilisant XAMPP, qui est également porté sur OS X. Il est entièrement à vous.

Android

Android? Je veux dire, Android est grand pour l`envoi de tweets et de tuer le temps sur Angry Birds. Mais le développement de logiciels? Nah. droite?

Faux. Si vous avez acheté un téléphone portable Android l`année écoulée, les chances sont très bonnes qu`il est en cours d`exécution d`un processeur qui est tout aussi puissant que tout VPS que vous obtiendrez pour moins de 10 $. Et cela signifie qu`il est assez bon pour exécuter PHP, Apache et MySQL.

Il y a beaucoup de serveurs Android LAMP sur le marché, mais je aime vraiment Palapa Server. Il fonctionne bien sur une tablette Nexus 7 vieillissement, et je l`ai même réussi à caser Android sur elle sans réelles difficultés. Ce n`est pas l`environnement de développement idéal, mais il est possible.

1.5 Choisir le bon éditeur de texte

Vous êtes probablement familier avec ce traitement de texte sont. Les chances sont bonnes que vous avez utilisé Microsoft Word, Open Office ou Google Docs pour écrire des lettres, des devoirs scolaires ou des documents d`affaires.

Mais vous savez peut-être pas qu`il est impossible d`utiliser un traitement de texte standard pour développer des logiciels et des sites Web. Pourquoi donc? Principalement parce que quand vous écrivez un document, vous laissez toutes sortes de balisage étrangers et la mise en forme dans le fichier. Le produit final ne sont pas seulement les mots que vous écrivez, mais aussi l`alignement de chaque mot et son style.

En conséquence, lorsque le code écrit, nous utilisons des éditeurs de texte. Que sont-ils? Il suffit de mettre, ceux-ci vous permettent d`écrire des fichiers qui sont enregistrés dans le plus pur texte brut. Pas de formatage. Juste caractères.

Lorsque le code écrit, je tends à utiliser Sublime Text 2. Il est livré avec un essai gratuit indéfini (bien, il ne vous parfois bourrin à la mise à niveau), et des tas de fonctionnalités, ce qui rend le logiciel d`écriture avec une joie.

En particulier, il vient construit avec coloration syntaxique pour PHP, javascript et HTML, ce qui le rend vraiment facile à lire le code que vous produisez. Vous pouvez télécharger Sublime Text 2 ici, et il est disponible pour Linux, Windows et Mac OS X. Si vous n`êtes pas convaincu, vous pouvez en savoir plus sur Sublime Text 2.Essayez Sublime Text 2 Pour votre code multi-plateforme d`édition des besoinsEssayez Sublime Text 2 Pour votre code multi-plateforme d`édition des besoinsSublime Text 2 est un éditeur de code multi-plateforme, je ne récemment entendu parler, et je dois dire que je suis vraiment impressionné malgré l`étiquette bêta. Vous pouvez télécharger l`application complète sans payer un sou ...Lire la suite

Si vous êtes sur Android, vous constaterez que vos choix sont assez limités. Je suis friand sur VimTouch, qui est disponible gratuitement sur la boutique Google Play. Vim a une courbe d`apprentissage assez raide, mais il est bien la peine d`essayer. En savoir plus sur pourquoi il est la peine de donner éditeur de texte Vim une chance.

1.6 Conditions préalables

Nous allons sauter directement dans l`apprentissage de PHP. Alors que je prévois de vous présenter en douceur à ce langage de programmation étonnante, il y a des choses que je vous attend à comprendre au préalable.

Plus précisément, je vais attendre que vous comprenez comment un site Web est structuré avec HTML. Si vous ne connaissez pas votre

étiquettes de votre balises, ce n`est pas un problème. MakeUseOf a XHTML livre qui vous amènera à la vitesse. Lisez cela et une fois que vous vous sentez confiant, lisez la suite.

Envie d`aventure? Pourquoi ne pas en savoir plus sur la dernière version de HTML avec notre HTML5 e-book? Alors qu`il est pas essentiel, il pourrait vous aider plus tard.

2. Bonjour tout le monde!

Le temps d`un tour-stop de sifflet PHP. Et quel meilleur endroit pour commencer que le traditionnel « Bonjour tout le monde! programme.

Mais d`abord, nous allons avoir besoin de savoir où stocker nos fichiers PHP. Nous les conserver dans un endroit appelé le « document racine », qui semble compliqué, mais il est vraiment pas. Tout ce moyen est tout ce qui est stocké dans ce dossier sera disponible à tous ceux qui visitent leur navigateur Web l`adresse IP de l`ordinateur.

L`emplacement de votre racine du document varie sur la façon dont votre environnement PHP est mis en place. Si vous utilisez MAMP sur Mac OS X, vous pouvez le trouver dans / Applications / MAMP / htdocs. Si vous avez installé votre serveur LAMP sur Linux en utilisant votre gestionnaire de paquets de la distribution, le répertoire racine du document sera probablement / var / Sur XAMPP, votre répertoire racine est situé dans C: / xampp / htdocs /.

Une fois que vous avez navigué dans le dossier racine du document, créez un fichier appelé « index.php » et ajoutez les lignes suivantes.

lt;html lang="en"gt;lt;têtegt;lt;méta charset="UTF-8"gt;lt;Titregt;Site MicrobloggingTitregt;têtegt;lt;corpsgt;corpsgt;htmlgt;


Rien ne se passe ici, mais nous avons le squelette d`une page Web. Cette page d`accueil se trouve à « localhost ». Parfois, il est suivi avec un numéro de port, qui est généralement « 80 », « 8888` ou « 8080` . Bien que, selon le programme de développement de PHP que vous utilisez, peut varier. Si vous n`êtes pas sûr, reportez-vous à la documentation.

Maintenant, nous allons écrire nos premières lignes de PHP! Entre et , écrire

lt;? php écho("Bonjour le monde!»)- ?gt;

Donc, nous allons décomposer.

Tout le code PHP doit être entre un « lt;? Php » et « gt;?. Si ce n`est pas alors la toile serveur ne l`exécuter. Ensuite, nous avons « echo ». Comme je suis sûr que vous l`avez deviné, cette fonction affiche le contenu dans le navigateur. Enfin, nous avons le contenu que nous voulons imprimer. Il est entouré entre parenthèses et marques de parole. Il est intéressant de noter que les parenthèses sont (pour la plupart) en option, quand il s`agit d`appeler une fonction.

Comme nous l`avons terminé l`instruction echo, nous terminons par un point-virgule. Si ce manque, votre code ne fonctionnera pas.

Si cela fonctionne, vous devriez voir « Bonjour tout le monde » dans votre navigateur.

2.1 Est-ce que PHP dois être entouré par HTML?

Non.

Si nous effectuer une action qui doit être affiché immédiatement dans le navigateur web, nous pouvons avoir imbriqué dans le document HTML. Ceci est appelé PHP en ligne, et c`est ce que nous avons utilisé pour imprimer « Bonjour tout le monde » à l`écran.

Cependant, pour quelque chose de plus complexe, nous devons toujours chercher à mettre dans son propre document PHP. Comme dans l`exemple précédent, le fichier doit se terminer par un « .php » extension et de tout le code doit commencer et se terminer par « lt;? Php » et « gt;?.

2.3 Concepts de base Langue

Avant de poursuivre, regardons quelques concepts linguistiques en PHP. Bien que cela ne constitue pas une liste exhaustive, il ne comprend les éléments essentiels nécessaires pour être productif en tant que programmeur PHP. Une fois que nous sommes passés à travers ceux-ci, nous allons envisager d`utiliser certains de ces concepts dans le contexte des formes.

Variables

Les variables sont un concept dans les langages de programmation pratiquement tous. Ils sont utilisés pour stocker une valeur, qui peut être récupéré, utilisé et modifié ultérieurement.

Vous connaissez peut-être une langue qui vous oblige à indiquer la valeur d`une variable. Ceux-ci comprennent C #, C, C ++ et Java, et regardez généralement un peu comme ça.

int x = 10-

Vous pourriez aussi être familier avec javascript, où les variables sont déclarées avec le mot-clé « var ».

var x = 10

Video: Sol béton ciré coulé - Bricolage avec Robert

En PHP, cependant, les variables sont déclarées avec un symbole de dollar.

$ X = 10

variables PHP ne peuvent pas commencer par un chiffre ou un caractère spécial autre qu`un trait de soulignement. De plus, ils ne peuvent pas être appelés « ceci, car cela est un mot-clé réservé.

Si états

Si les déclarations sont utiles. Ils vous permettent d`exécuter contingent de code à une condition spécifique satisfaite. Considérez le code suivant.

x $ = 5-si (x $ == 4) {écho("Bonjour le monde")-} elseif (x $ == 3) {écho(« Bonjour Dave »)-} autre {écho(« Bonjour Brian »)-}

Ainsi, la première condition est en cours d`examen si $ x est égal à quatre (notez le double est égal à des symboles). Puisqu`il n`est pas, l`interpréteur PHP se penchera sur la prochaine instruction conditionnelle, ce qui est si $ x est égal à 3. Dans le cas contraire, il passera à la déclaration finale, qui fera écho à « Bonjour Brian » si aucun des conditions ont été remplies.

Vous pouvez vérifier si une variable est vide (aussi connu sous le nom « nul » ou une « valeur nulle») par ce qui précède avec un! dans la déclaration « si ». Par exemple:

si (!x $){écho(« X est vide »)-}

while

While exécuter du code à plusieurs reprises pendant une condition est satisfaite. Considérez le code suivant.

x $ = dix-tandis que (x $ gt; 1) {écho(x $)-x $ = x $ - 1-}

Ce code ressemble à la valeur de $ x, et si elle est supérieure à un, il se fera l`écho de la valeur de $ x, puis retirez l`un de celui-ci. Il fera, jusqu`à ce que la condition de « $ x gt; 1`n`est plus remplie. C`est-à-dire qu`il est égal à 1 ou moins.

pour boucles

Pour les boucles sont, en tant que concept dans la programmation, souvent assez intimidant pour les débutants. Ils ne devraient pas être, cependant. Alors qu`ils sont en apparence assez complexe, ils sont vraiment faciles à comprendre lorsqu`ils sont ventilés. Écrivons une simple boucle qui compte de un à dix.

pour($ i = 0- $ i lt; dix- $ i++){écho($ i)-}

Qu`est-ce qu`il se passe ici? Eh bien, tout d`abord, nous créons une variable avec une valeur de 0 ($ i = 0). Nous fixons donc la condition de « si $ i est inférieur à 10, continuer » ($ i lt; dix). Nous ajoutons un à I (i ++ $) et exécutons le contenu des accolades, bouclant sur le code d`origine.

Les fonctions

Les fonctions sont un outil utile en matière de programmation. Ils vous permettent d`écrire du code qui est plus cohérent, et passer moins de temps à écrire les mêmes choses encore et encore par le code compartimenter en un seul extrait qui peut être appelé en cas de besoin.

Ils sont également très simples à créer. Voilà comment nous faisons une fonction qui fait écho à « Bonjour tout le monde » lorsqu`il est appelé. Cette fonction sera appelée « sayHello () ».

fonction dis bonjour(){écho("Bonjour le monde")-}

Vous pouvez également transmettre des valeurs de fonctions. Ceux-ci sont connus en tant que paramètres, et sont mis dans les deux parenthèses dans la première ligne de la déclaration. Par exemple:

fonction dis bonjour($ bonjour){écho($ bonjour)-}

Et peut être appelé comme suit:

dis bonjour("Bonjour le monde")-

Enfin, nous pouvons obtenir des fonctions pour renvoyer des valeurs.

fonction returnHello(){revenir "Bonjour le monde"-}

Et peut être utilisé comme suit.

X = returnHello()-écho(returnHello())-

2.4 Sur la route

Nous avons appris les bases du contrôle de flux dans le langage PHP, ainsi que la façon dont nous pouvons utiliser des variables et fonctions pour stocker des valeurs et des extraits de code pour une utilisation ultérieure. Dans le chapitre suivant, nous allons élargir notre compréhension du langage de programmation PHP en regardant la façon dont nous pouvons capturer des données avec des formes, formant ainsi la première partie de notre clone Twitter.

3. Formulaires

3.1 Comment le fonctionnement des formulaires en HTML

Les formulaires sont partout.

Non sérieusement. Elles sont. Lorsque vous laissez un commentaire sur MakeUseOf- lorsque vous achetez quelque chose sur Amazon et je dois écrire votre adresse et carte de crédit lorsque vous rédigez Numéros et soumettre un Tweet, vous remplissez un formulaire.

Je sais que je sonne comme un disque cassé, mais si vous avez pas lu le guide HTML5 MakeUseOf, vous devriez. Vous n`avez pas besoin pour ce chapitre, mais il va vous montrer quelques trucs cool que vous pouvez faire avec des formes dans la dernière version du langage de balisage HTML.

3.2 Créer notre première forme

Vous avez probablement vu Twitter avant.

Le noyau d`un Tweet est une zone de texte sur plusieurs lignes, et un bouton qui soumet aux serveurs de Twitter. Alors, comment pouvons-nous créer une version rudimentaire de ce en HTML? Eh bien, il ressemble à ceci:

lt;corpsgt;lt;forme action="postForm.php" méthode="poster"gt;


Donc, nous allons décomposer.

Video: Tutoriel Symfony2 - Apprendre à développer un site Ecommerce

Un formulaire est joint dans les balises de formulaire. Forme prend deux arguments, le premier étant un lien vers un fichier PHP qui contient le code qui gère notre formulaire. Le second est une méthode, et cela fait référence à la façon dont vous envoyer des données à la toile serveur. Ceux-ci peuvent être « post » ou « obtenir ».

A l`intérieur, nous avons un élément textarea. Savez-vous quelle est la différence entre un élément textarea et est entrée?

Il est une différence très subtile. Ils font à peu près la même chose, bien qu`un élément textarea vous permet d`entrer plusieurs lignes de contenu, alors qu`une entrée (lorsqu`ils ne sont pas utilisés pour soumettre un formulaire) ne peut accepter une ligne de contenu.

Depuis que nous créons un clone de Twitter, nous allons utiliser un élément textarea pour capturer le poste. Cet élément prend quelques arguments. Les deux premiers sont « nom » et « id », que nous avons donné la valeur de « microblog ». Les deux seconds sont des « cols` et les « rangées, dont nous avons donné les valeurs de « 30 » et « 10 » respectivement. Ceux-ci peuvent être ajustés, comme bon vous semble.

Enfin, nous avons un élément d`entrée. Cela a un type de « soumettre » et est rendu dans le navigateur comme un bouton. Une fois pressé, il passera le contenu de « postForm.php ».

Nous devrions avoir quelque chose qui ressemble à ceci. Pas la chose la plus agréable au monde, mais nous nous occuperons plus tard.

3.3 Gestion Cette entrée avec PHP

Conformément à la douceur de ce livre, nous allons simplement regarder comment nous pouvons capturer l`entrée, puis l`imprimer à l`écran. Nous examinerons la persistance et la stocker dans la base de données plus tard.

Alors, rappelez-vous que le fichier postForm.php nous l`avons mentionné plus tôt? Créer que dans la racine du document.

Maintenant, ajoutez les lignes suivantes.

lt;? php$ microblog = $ _POST[`Microblog`]-écho $ microblog-?gt;

Alors, quelle est cette chose $ _POST alors?

Eh bien, c`est ce que nous appelons une variable super-globale. Cela semble compliqué, mais ce n`est pas. Dans sa forme la plus simple, cela signifie que chaque fois que nous avons besoin de faire référence à une entrée de formulaire, nous devons utiliser. A la fin de $ _POST, nous écrivons l`ID de l`entrée de formulaire nous faisant référence. Ceci doit être pris en sandwich entre des crochets et des guillemets.

Nous attribuons le contenu du « microblog » à une variable, puis l`écho à l`écran. Simple, vraiment.

Video: Peinture de sol époxy | Raviver et protéger vos sols en béton | Vidéo Application

Mais ça marche? Essayons.

Nous naviguons à notre page d`accueil et d`écrire quelque chose dans la forme. Ensuite, nous appuyer sur « Soumettre ».

Comme vous pouvez le voir, notre entrée est retourné de nouveau à nous. Voici une question cependant. Qu`advient-il si nous fermons notre onglet du navigateur et rouvrez localhost / postForm.php?

Il n`y a rien là-bas. Niet. Nada.

C`est parce qu`il est pas stocké, sauf dans la mémoire à court terme de notre navigateur web. Une fois qu`il est parti, il est parti.

Cependant, il y a un moyen facile de faire en sorte que nos données sont conservées pour toujours. Nous devons le mettre dans une base de données. Alors que dans un premier temps ils ne sont pas le sujet le plus excitant jamais, ils sont assez faciles à obtenir le coup de.

Et dans le chapitre suivant, je vais vous montrer comment vous pouvez stocker vos tweets dans une base de données.

4. bases de données

J`ai une confession à faire. J`aime vraiment les bases de données.

Depuis que les ordinateurs ont été inventés, nous avons besoin de stocker le contenu. Tout le mot de passe que vous utilisez pour vous connecter à Facebook, à la configuration de votre ordinateur, sur votre compte bancaire, est stocké dans une base de données. Les versions antérieures de bases de données étaient fondamentalement primitive et limitée. Depuis lors, ils ont évolué et avancé, améliorant ainsi la rapidité et la fiabilité de leur fonctionnement. Ceci est en grande partie en raison de quelque 50 années de développement.

Une façon de stocker des données est une base de données relationnelle. Ce paradigme de stockage de données a été introduite dans les années 80 et repose sur un maillage de tables reliées entre elles, avec des données organisées en lignes et en colonnes.

Il y a un grand nombre de systèmes de gestion de bases de données qui utilisent ce paradigme (connu sous le nom SGBDR `), y compris Oracle, MSSQL et MariaDB. Mais nous allons seulement regarder un. MySQL.

MySQL est un système de gestion de base de données moderne. Le nombre de sites qui en dépendent est vertigineusement grande. Il est la base de données derrière WordPress et Facebook, et est basé sur le paradigme de la base de données relationnelle fiable.

Avantages de la base de données MySQL sont trop nombreux pour les mentionner.

Tout d`abord, il est à la fois dans le coût franco et en termes de licences. Il se trouve en cours d`exécution sur chaque plate-forme, ayant été porté à certains des systèmes d`exploitation les plus obscurs du monde.

De plus, il est un logiciel assez léger, et peut fonctionner tout à fait confortablement sur la plupart des systèmes de VPS à faible puissance.

Il est également très facile de démarrer avec MySQL, et il y a une foule énorme d`informations là-bas pour les personnes qui voudraient se mouiller les pieds avec elle, y compris certains utilisateurs incroyablement détaillés et précis documentation générée.

Pour interagir avec MySQL, nous devons utiliser le langage de programmation SQL (Structured Query Language). Cela nous permet d`effectuer des requêtes complexes contre une base de données, tout en anglais ressemblant fortement à écrit. Par conséquent, il est vraiment facile pour les débutants pour commencer avec.

Mais avant d`arriver à cela, nous allons parler de MySQL types de données.

MySQL 4.1 Datatypes

MySQL exige que chaque colonne dans une table être classée avec un type de données spécifique. Par exemple, l`âge de quelqu`un serait considéré comme un numéro, alors que le nom de quelqu`un serait composé d`un nombre variable de caractères alphabétiques.

Nous précisons types de données pour assurer la cohérence des données stockées dans la table.

Bien que cela semble compliqué, je vous assure que ce n`est pas. Ce que nous parlons est de connaître les données que nous avons l`intention de conserver, et savoir comment le classer.

Il y a un grand nombre de types de données MySQL. Nous allons seulement parler de deux, qui sont plus que suffisantes aux fins de ce livre.

Varchar (x)

Lorsque vous êtes saisie du contenu qui peut contenir une variance des nombres, des caractères spéciaux et des lettres, vous recommandé d`utiliser un champ varchar. Ceux-ci peuvent être de longueur variable. Une taille du champ avec une longueur maximum de trente caractères peut être représenté avec varchar (30).

Entier

Lorsque vous enregistrez des numéros, nous utilisons une valeur entière. Ceux-ci peuvent aller -2147483648 à 2147483647, bien qu`il y ait plus de types de données disponibles si vous avez besoin pour représenter un plus grand nombre. Dans ce cas, reportez-vous au manuel MySQL.

Autres MySQL Datatypes

Il y a un grand nombre de types de données disponibles, qui peuvent être utilisés pour représenter et de conserver toutes sortes de données. Ceux-ci comprennent de gros morceaux de texte, des valeurs vraies ou fausses et les fichiers binaires. Si vous êtes curieux d`en savoir plus, consultez la documentation MySQL.

4.2 Créer notre base de données

Bon, maintenant il est temps de commencer à travailler sur une base de données pour notre clone Twitter.

, Il faut d`abord se connecter à MySQL. Si vous utilisez Linux et que vous avez installé MySQL via votre gestionnaire de paquets, vous pouvez vous connecter via le terminal avec la commande suivante.

mysql -u root -p

Sur quoi, vous serez invité à entrer votre mot de passe.

Les utilisateurs de XAMPP et MAMP peuvent utiliser PHPMyAdmin, qui est livré et vous permet d`éditer la base de données avec une belle interface web.

Donc, nous devons d`abord créer la base de données pour notre site Web et créer une table pour tenir nos postes de microblog.

Que ce soit par PHPMyAdmin ou via la console MySQL, exécutez les lignes suivantes.

CREATE DATABASE MicroBlog-

UTILISATION MicroBlog-

CREATE TABLE microblog (id entier auto_increment, varchar de poste (255), la clé primaire (id)) -

À moins que vous voyez un message d`erreur, votre table a été créée sans accroc.

Alors, quelques choses que vous avez sans doute remarqué là-bas. Tout d`abord, nous terminer chaque instruction avec un point-virgule, un peu comme nous l`avons fait quand nous écrivions PHP.

En second lieu, les choses sont assez explicites, non? SQL se lit comme l`anglais écrit et il est assez facile de comprendre ce qui se passe.

Cela dit, il y a certaines choses dans l`instruction CREATE TABLE que vous pouvez ne pas connaître. Le premier est « auto_increment ». Qu`est-ce que cela fait?

Eh bien, ID est un champ qui identifie de manière unique chaque poste. Lorsque nous l`avons créé, nous lui avons donné un attribut de « auto_increment », et chaque fois qu`une nouvelle ligne est ajoutée à la base de données, cette ligne est un numéro unique. Ce nombre compte par un, pour chaque ligne ajoutée.

Enfin, ce qui est « clé primaire (id)? Eh bien, nous voulons « id » être tout à fait unique. Nous voulons également ID à un champ qui peut identifier une ligne. Faire « id » une clé primaire assure que ces conditions peuvent être remplies.

4.3 La mauvaise manière d`interroger la base

Alors, comment pouvons-nous insérer un poste dans notre base de données? Grande question.

La manière traditionnelle de faire cela en PHP semblait un peu comme ceci:

$ Conn = mysqli_connect (DBServer $, DBUser $, DBPASS $, DBName $) -

Vous créer une connexion au serveur en utilisant le nom d`hôte, les informations d`identification de base de données et le nom base de données et assignons à un objet. Dans ce cas, nous l`avons appelé $ conn (pour la connexion).

Nous pourrions alors définir la requête de base de données que nous voulons faire.

$ Query = mysqli_query ($ conn, « INSERT INTO microblog ( « post $ `) ») -

Et puis nous fermer la connexion à la base de données.

mysqli_close ($ conn) -

Alors, quel mal à cela? Eh bien, il repose sur une assumption- clé qui peut faire confiance toute entrée transmise à la base de données.

Ce n`est pas toujours le cas. Si vous n`êtes pas très prudent, il est tout à fait possible de se faufiler dans un code SQL arbitraire, qui peut alors entraîner des fuites de données ou la défiguration des enregistrements stockés dans votre base de données.

LinkedIn appris cela à la dure. Un fil d`entrée mal aseptisé à la libération involontaire (et non autorisée) de milliers d`enregistrements d`utilisateurs dans une débâcle qui a été mentionné comme LeakedIn. Ce fut un incident qui leur a coûté cher, à la fois par rapport au coût financier de faire le bien, ainsi que la bonne volonté perdu en perdant des millions de lignes de données personnelles.

Alors, comment pouvons-nous utiliser en toute sécurité une base de données avec PHP?

4.4 Rencontre MeekroDB

MeekroDB est une bibliothèque qui le rend facile d`interagir avec une base de données sans être grande ouverte à une menace extérieure. Il a été conçu à partir du sol pour être imperméable aux attaques par injection SQL. Il est gratuit pour une utilisation à but non lucratif, mais si vous prévoyez de l`utiliser dans un projet commercial, vous devez payer une licence.

Télécharger une copie de MeekroDB sur le site officiel. Une fois que vous l`avez, décompressez-le et placez-le dans votre répertoire racine des documents.Qu`est-ce qu`une injection SQL? [MakeUseOf Explique]Qu`est-ce qu`une injection SQL? [MakeUseOf Explique]Le monde de la sécurité Internet est en proie à des ports ouverts, des backdoors, des failles de sécurité, les chevaux de Troie, les vers, les vulnérabilités du pare-feu et une foule d`autres questions qui nous tiennent tous chaque jour sur nos orteils. Pour les particuliers, ...Lire la suite

Maintenant, nous allons revenir à votre éditeur de texte. Ouvrez postForm.php et ajoutez les lignes suivantes.

Demandez une fois `Meekrodb.2.2.class.php`-DB::$ user = `utilisateur`-DB::mot de passe $ = `mot de passe`-DB::$ dbName = `base de données`-

« Utilisateur » Change, « mot de passe » et « base de données » avec votre nom d`utilisateur de base de données réelle, mot de passe et le nom de la base de données.

Maintenant, il est temps d`insérer votre message dans votre base de données. Ajoutez les lignes de code ci-dessous.

DB :: debugmode () - $ microblog = $ _POST [ `microblog`] - DB :: insert ( `microblog`, array ( `post` = gt; microblog $)) -

Donc, nous allons décomposer.

DB :: debugmode () - lance des messages d`erreur si nous faisons quelque chose de mal. En conséquence, il est vraiment très pratique de laisser cela dans notre code, car il rend le processus de développement que peu plus facile.

L`insert de DB est appelée lorsque nous avons besoin d`insérer un ou plusieurs éléments dans la base de données. « Microblog » fait référence à la table de base de données, tandis que « post » contient le message que vous venez posté sur le site.

Nous pouvons voir si nos messages sont parvenus à la base de données en ouvrant PHPMyAdmin et d`avoir un regard.

Si vous utilisez MySQL sous Linux, et vous avez installé le gestionnaire de paquets, vous pouvez ouvrir MySQL à partir du terminal et exécutez les commandes suivantes.

Utilisez MicroBlog-

Select * from MicroBlog-

Simple, non? Donnez qu`un aller et ensuite, nous allons regarder où figurent nos messages sur la page d`accueil. Je vous promets, ce n`est pas trop dur.

5. Contenu Obtenir la base de données

Nous avons mis en place MeekroDB déjà. Ceci est la bibliothèque de base de données qui nous permet d`interagir en toute sécurité avec une base de données MySQL dans le cadre d`une application PHP.

Si vous avez terminé le chapitre précédent, vous devriez avoir quelques messages dans la base de données. Cependant, ils sont juste assis dans une base de données ne sont pas utilisés. Quel dommage! Alors, regardons les entrer dans le navigateur.

Nous savons que nous pouvons utiliser SQL est le langage utilisé par MySQL pour interroger la base de données. Alors que MeekroDB vous permet d`insérer du contenu dans votre base de données sans utiliser SQL, vous devez utiliser un SQL pour récupérer les enregistrements.

5.1 Sélection et Présentation des résultats

Une telle déclaration est la « Déclaration Select ». Nous avons déjà utilisé cela pour voir si nos fichiers avaient propagé à la base de données. Nous allons l`utiliser à nouveau ici.

Ci-dessous la balise de fermeture du formulaire, ajouter lt;? php et gt?; et entre les écrire les lignes suivantes de code.

lt;? phpDemandez une fois `Meekrodb.2.2.class.php`-DB::$ user = `racine`-DB::mot de passe $ = `racine`-DB::$ dbName = `Microblog`-Résultats de $ = DB::question("après SELECT FROM microblog")-pour chaque (Résultats de $ comme $ row){écho "
"
. $ row[`poster`] . ""-}?gt;

Regardons cela un peu plus près. Nous savons ce que les cinq premières lignes font. Nous les avons utilisés précédemment dans le cadre d`insérer nos messages dans la base de données.

$ Résultats = DB :: query ( « SELECT après DE microblog ») -

Cette ligne sélectionne tous les messages de la table « microblog », puis les copies à une variable appelée résultats $.

Et puis ça devient intéressant. Ainsi, les résultats $ arrive à se composer d`un certain nombre d`éléments. Cela signifie que nous pouvons itérer sur eux en utilisant quelque chose qui rappelle fortement les « pour » boucles que nous avons examinés précédemment à.

pour chaque (Résultats de $ comme $ row){écho "
"
. $ row[`poster`] . ""-}

Donc, ici, nous allons sur chaque résultat, et la cartographie à une variable. Nous imprimons ensuite dans certaines balises entre « div ». Ceux-ci nous permettent d`encapsuler chaque poste, et d`appliquer Stylings à chacun d`eux.

Il ne ressemble pas beaucoup maintenant, non? Changeons cela.

5.2 Styling

Créer un nouveau fichier appelé « style.css` et ajoutez la ligne suivante de code HTML en entre les balises « tête ».

Maintenant, il est temps de faire de chaque postage un peu plus distinctif et perceptible. Dans « style.css`, ajoutez les lignes suivantes.

corps {Couleur de fond: # 99CCFF -}forme {text-align: centre-margin-left: 300px-marge droite: 300px-}.microblog {text-align: centre-margin-left: 300px-marge droite: 300px-margin-bottom: 10px-style de bordure:solide-largeur de la bordure:5px-}

Je ne vais pas insulter votre intelligence en expliquant ligne pour ligne ce que cela fait. Vous pouvez probablement travailler dehors, juste en le lisant. Nous avons donné chaque poste un peu de rembourrage, de sorte qu`il est relativement centré sur l`écran. Nous avons également donné une bordure, et la forme aligné au centre de l`écran.

Ce produit quelque chose qui ressemble un peu comme ça.

Cool, non?

Maintenant, dans notre avant-dernier chapitre, nous allons réunir tout ce que nous avons appris jusqu`à présent, et voir comment nous pouvons gérer les connexions.

6. Logins et d`authentification

Imaginons que nous voulons qu`une seule personne pour être en mesure d`afficher des mises à jour sur notre si

Articles connexes