Cours développement PHP / MySQL – Partie 2

Ce deuxième cours est dédié aux boucles, ou itérations.

1- While

Premier cas de figure, la boucle while. Voici sa syntaxe :

<?php
while (condition) {
  // du code ...
}

Ce qui signifie « tant que la condition se vérifie, on exécute le code dans le bloc ». Exemple :

<?php
$i = 0;

while ($i < 10) {
  $i++;
  echo 'Nous en sommes à ' . $i . ' itérations';
}

Ici, tant que la variable $i est inférieure à 10, on incrémente la valeur de $i et on affiche le texte.

2- Do while

Presque le même raisonnement :

<?php
$i = 0;

do {
  $i++;
  echo 'Nous sommes à ' . $i . ' itérations';
} while ($i < 10);

L’utilité de cette boucle par rapport à « while » est que l’on est assuré que les instructions du bloc seront joués au moins une fois : « Fait ceci tant que …. »

Important : notez le point virgule après la parenthèse fermante du « while » …

3- For

Complètement différent :

<?php

for ($i = 0; $i < 10; $i++) {
  echo 'Nous sommes à ' . $i . ' itérations';
}

Très pratique. Ici, l’initialisation du compteur, la condition et l’incrémentation se situe directement entre les parenthèses du « for ».

4- Foreach

Sans doute la plus utilisé, car elle nous sert à itérer sur des tableaux :

 <?php

$livres = array(
  array(
    'titre' => 'Harry Potter',
    'auteur' => 'J. K. Rowling'
  ),
  array(
    'titre' => 'Carrie',
    'auteur' => 'Stephen King'
  )
);

foreach ($livres as $livre) {
  echo $livre['titre'] . ' : ' . $livre['auteur'];
}

Ici, nous avons un tableau indexé numériquement qui contient des tableaux associatifs. À l’index 0 nous avons Harry Potter et à l’index 1, Carrie.

La boucle foreach peut se traduire ainsi : « On représente chaque livre par la variable $livre ». Ainsi nous avons accès aux clés « titre » et « auteur » indépendamment.

Vous pouvez aussi accéder aux clés du tableau parent grâce à cette syntaxe :

<?php
foreach ($livres as $key => $livre) {
  echo 'Livre n°' . $key . ' : ' .  $livre['titre'] . ' : ' . $livre['auteur'];
}

Vous connaissez l’essentiel sur le sujet. Je vous invite à essayer le TP n°2 pour mettre tout ça en pratique.

TP 2 – Affichage des articles

EDIT : Les TPs sont déplacés sur mon nouveau forum, c’est, je trouve, bien plus pratique. Ainsi nous pouvons nous passer de pastebin, collez votre code directement dans vos réponses, en vous servant des balises dédiées.

Votre mission du jour, afficher une liste d’articles sur la page.
Toujours pas d’utilisation de base de données, voici un petit tableau associatif représentant ces fameux articles :

<?php
$articles = array(
    array(
        'title' => 'Le PHP',
        'content' => 'Le langage PHP fut créé en 1994 par Rasmus Lerdorf pour son site web.
            C\'était à l\'origine une bibliothèque logicielle en Perl dont il se servait pour
            conserver une trace des visiteurs qui venaient consulter son CV. Au fur et à mesure
            qu\'il ajoutait de nouvelles fonctionnalités, Rasmus a transformé la bibliothèque en
            une implémentation en langage C, capable de communiquer avec des bases de données et
            de créer des applications dynamiques et simples pour le Web. Rasmus décida alors en
            1995 de publier son code, pour que tout le monde puisse l\'utiliser et en profiter.
            PHP s\'appelait alors PHP/FI (pour Personal Home Page Tools/Form Interpreter). En
            1997, deux étudiants, Andi Gutmans et Zeev Suraski, redéveloppèrent le cœur de PHP/FI.
            Ce travail aboutit un an plus tard à la version 3 de PHP, devenu alors PHP: Hypertext
            Preprocessor. Peu de temps après, Andi Gutmans et Zeev Suraski commencèrent la réécriture
            du moteur interne de PHP. Ce fut ce nouveau moteur, appelé Zend Engine qui servit de base
            à la version 4 de PHP'
        ),
    array(
        'title' => 'L\'informatique',
        'content' => 'L\'informatique est le domaine d\'activité scientifique, technique et industriel
            concernant le traitement automatique de l\'information par des machines telles que :
            calculateur, système embarqué, ordinateur, console de jeux vidéo, robot, automate, etc.
            Le terme « informatique » désigne à l\'origine l\'ensemble des activités liées à la conception
            et à l\'emploi des ordinateurs, d\'un point de vue principalement technique. Dans le vocabulaire
            universitaire américain, il désigne surtout l\'informatique théorique : un ensemble de sciences
            formelles qui ont pour objet d\'étude la notion d\'information et des procédés de traitement
            automatique de celle-ci, l\'algorithmique, parfois aussi le traitement du signal, la calculabilité
            ou la théorie de l\'information. L\'autre sens du mot (conception, déploiement et usage en entreprise)
            est désigné sous le nom de Data Processing.
            L\'automatisation du traitement de l\'information est bien plus ancienne que l\'invention de l\'ordinateur,
            les premières machines mécaniques de traitement automatisé ayant été construites au xviie siècle.'
        ),
    array(
        'title' => 'Hello world',
        'content' => 'hello world (traduit littéralement en français par « bonjour le monde ») sont les mots
            traditionnellement écrits par un programme informatique simple dont le but est de faire la démonstration
            rapide d\'un langage de programmation (par exemple à but pédagogique) ou le test d\'un compilateur.
            Certains des programmes imprimant ces mots sont étonnamment complexes, particulièrement dans un contexte
            d\'interface graphique. D\'autres sont très simples, particulièrement ceux qui utilisent un interpréteur
            de ligne de commande pour afficher le résultat. Dans plusieurs systèmes embarqués, le texte peut être
            envoyé sur une ou deux lignes d\'un afficheur LCD (ou dans d\'autres systèmes, une simple DEL peut se
            substituer à un hello world).'
    )
);
?>

Ces articles sont repris de Wikipedia.

Donc, copiez-collez ce tableau au tout début de votre script, et affichez les articles dans une page web conforme.
Pour réaliser ce TP, vous aurez besoin de connaître les tableaux (ou array) associatifs et les boucles. Je rédigerai le cours correspondant dans peu de temps.

Bon courage !

Cours développement PHP / MySQL – Partie 1

Bonjour à tous !

Afin de participer au TP n°1, voici un petit cours sur les fondamentaux du développement Web en PHP. Le seul prérequis que je vous demanderais, c’est de connaitre l’HTML, au moins un minimum. Si ce n’est pas le cas, allez faire un tour sur le site du zéro par exemple, vous y trouverez d’excellents cours sur le sujet.

Continue reading

TP 1 – Posons les bases

EDIT : Les TPs sont déplacés sur mon nouveau forum, c’est, je trouve, bien plus pratique. Ainsi nous pouvons nous passer de pastebin, collez votre code directement dans vos réponses, en vous servant des balises dédiées.

Donc, commençons avec le premier TP en rapport au cours numéro 1.

Votre premier objectif va être d’écrire un script simple permettant de poster un article à partir d’un formulaire.

Étant donné que notre objectif est de commencer en douceur, il n’y aura pour l’instant pas d’utilisation de base de données, pas de session, pas d’inclusion de scripts, pas de notion de sécurité … on va faire au plus simple. Voici donc les consignes :

  • Créer un script unique.
  • La partie « page web » devra contenir un formulaire contenant un champ input de type text pour le titre de l’article, et un champ textarea pour le contenu.
  • L’envoi du formulaire affiche l’article posté si les deux champs sont remplis. Sinon, afficher un message d’erreur.
  • Pas de persistance en base de données.
  • Utilisation de structures de contrôles pour tester l’existence de données envoyée depuis le formulaire.
  • Ne vous souciez pas de la sécurité pour l’instant.

 

Aller, bande de tires-au-flanc ! Au travail :D

Ouverture des TP sur le développement PHP / MySQL

EDIT : Les TPs sont déplacés sur mon nouveau forum, c’est, je trouve, bien plus pratique. Ainsi nous pouvons nous passer de pastebin, collez votre code directement dans vos réponses, en vous servant des balises dédiées.

Afin d’évoluer sur des cas de besoins concrets, je vais orienter les TP sur la création d’un petit blog. Ce n’est pas très original, mais cela va permettre d’évoluer sur des comportements connus, qui intégreront de la logique mais aussi de la sécurité.

Peluche PHP Continue reading

Le Lion est arrivé !

N’en déplaise aux envieux, ou haineux qui détestent Apple pour X (bonnes ou mauvaises) raisons, il faut bien reconnaître que Mac OS est un système à la pointe de l’ergonomie. Une fois n’est pas coutume, une mise à jour importante vient de débarquer afin de confirmer cet état de fait.

Mieux qu’une longue description (qui est déjà faite sur un nombre incalculable de sites high-tech) voici une petite vidéo que j’ai faite de mon nouveau bureau afin de vous faire profiter de quelques nouveautés agréables. La vidéo rame un peu, c’est dommage, mais ce n’est absolument pas le cas à l’utilisation du système, qui est on ne peut plus fluide ;)

Débridez Youtube grâce à Firefox

Logo de FirefoxJe ne sais pas si vous avez remarqué, mais si votre fournisseur d’accès est Free, SFR ou Orange, c’est la galère sur Youtube !

En effet, ces 3 providers brident notre débit sous prétexte que Youtube, ça pompe de la bande passante, et que ça leur coûte des ronds. Mais ce que j’en dis, c’est que je paye tous les mois un abonnement pour profiter de TOUT Internet, il est hors de question de me retrouver brider (surtout que Youtube, je m’en sers).

La solution pour contourner ce bridage est de passer par un proxy. Pour les moins geeks d’entre nous, un proxy est un serveur sur lequel nous nous connectons pour faire transiter nos requêtes. En d’autres termes, nous pouvons utiliser le net sous une autre identité que la nôtre. Continue reading

Journée de cascades en voiture

Voici un montage vidéo d’une journée de cascades en voiture pour l’anniversaire d’une amie de ma chère et tendre.

Le circuit est à Aulnay sous Bois dans le 93, plus précisément aux abords de l’usine PSA.

Nous avons eu l’occasion de monter à bord d’une BMW série 3 pour une course poursuite en drift (conduite en glisse) à deux voitures, puis du deux roues dans une Citroën C4.

L’évènement était organisé par Ciné Actions Systems ( http://www.cineactionssystems.com/ ), une équipe de cascadeurs qui travaillent d’habitude pour le cinéma.

L’équipe est super sympa, bonne ambiance, démonstrations impressionnantes, que du bonheur ! Je recommande vivement !