INTRODUCTION AU PHP

Afficher du texte, des données

Afficher du HTML pur

Avant d'écrire votre premier programme en PHP, il vous faut tester votre poste de travail et votre serveur. Recopier le programme ci-dessous avec l'éditeur de texte de votre choix.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
  </head>
  <body>
    <p>Ce texte est en html.</p>
  </body>
</html>

Placer ce programme sur le serveur :

Taper l'adresse du site dans la barre d'adresse :

http://172.17.1.2/~login/TP_PHP/essai.html

Cela fonctionne? Parfait! Vous pouvez passer à la suite.

Afficher du HTML avec du PHP

Procéder de la même manière que précédemment, mais utiliser l'extension ".php" pour le nom du fichier. Tester le programme ci-dessous.

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
  </head>
  <body>
    <p>Ce texte est en html.</p>
    <?php
    // Voici un commentaire...
    echo "<p>Ce texte est en PHP.</p>";
    $nombre=20;
    echo "<p>La valeur ";
    echo $nombre;
    echo " est celle d'une variable.</p>";
    ?>
  </body>
</html>

Vérifier que le programme ne fonctionne convenablement que s'il est placé sur le serveur.

Complément

1. Les trois syntaxes ci-dessous sont équivalentes :

print("du texte");
print "du texte";
echo "du texte";

2. Il existe une différence entre les guillemets simples et doubles.

Exemple de code :

echo "<p>La valeur $nombre est celle d'une variable.</p>";
echo '<p>La valeur $nombre est celle d\'une variable.</p>';

Résultat obtenu :

La valeur 20 est celle d'une variable.
La valeur $nombre est celle d'une variable.

3. On obtient un retour à la ligne avec les caractères \n, à condition d'utiliser les guillemets doubles.

Exemple de code :

echo "<p>La valeur $nombre \n est celle d'une variable.</p>\n";
echo '<p>La valeur $nombre \n est celle d\'une variable.</p>';

Code HTML retourné par le serveur :

<p>La valeur 30
est celle d'une variable.</p>
<p>La valeur $nombre \n est celle d'une variable.</p>

4. Devinette : Quelle différence y a-t-il entre les deux codes ci-dessous, écrivant du JavaScript dans une page HTML?

Premier code :

<?php
  echo '//Commentaire';
?>

<?php
  echo 'a=26;';
?>

Deuxième code, issu du premier code que l'on a simplifié :

<?php
  echo '//Commentaire';

  echo 'a=26;';
?>

Afficher des informations sur le serveur

Créer un fichier info.php ayant le contenu suivant :

<?php
  phpinfo();
?>

Visualiser, depuis un client http, le résultat fourni par ce script en expliquant ce que fait la fonction phpinfo().

Relever les informations suivantes :

Elaborer une page d'accueil

Cahier des charges

L'objectif est de développer un script PHP permettant de donner la date et l'heure sous la forme suivante :

Nous sommes le vendredi 11 Avril 2014

Il est 09h15

Le ou les scripts PHP seront stockés dans le répertoire /perso/public_html/TP_PHP.

Ils seront ensuite appelés via l'url suivante :

http://172.17.1.2/~login/TP_PHP/nom_script.php

Test de la fonction getdate()

1. La fonction getdate() permet de manipuler les dates en php.

Exécuter le code suivant :

<?php
  $resultat=getdate();
  print_r($resultat);
?>

Quel est le type du résultat retourné par getdate()? Que fait la fonction print_r() ? Commenter le résultat du script.

2. A partir de la valeur retournée par la fonction getdate(), il est possible d'afficher le jour de la semaine en anglais. Tester le code suivant.

<?php
  $resultat=getdate();
  echo "day : ".$resultat["weekday"];
?>

Ecriture du programme

1. Soit le code PHP suivant :

<?php
  while (list($key, $val) = each($resultat))
  echo "A l'indice ".$key." se trouve la valeur : ".$val."<br>";
?>

Expliquer et commenter le résultat après avoir étudié les fonctions each() et list().

2. Soit la définition suivante :

<?php
  $tabjour=array("Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche");
?>

Afficher le contenu du tableau avec :

3. Elaborer, en se servant des questions précédentes, une technique pour traduire le jour courant de l'anglais au français.

Développer alors une fonction getjourfr() qui retourne le jour courant en français :

<?php
  function getjourfr() {
    ...
    return $resultat;
  }
?>

La fonction sera stockée dans un fichier datefr.php. Ce dernier sera exploité ensuite comme suit.

<?php
  include("datefr.php");
  echo getjourfr();
?>

4. Élaborer sur le même principe la fonction getmoisfr() (stockée également dans datefr.php) et tester.

5. Élaborer alors le script demandé dans le cahier des charges.