Vous êtes sur la page 1sur 6

DEPARTEMENT D'INFORMATIQUE ANNEE UNIVERSITAIRE : 2022-2023

PROGRAMMATION WEB
SERIE 3 PHP
ENSEIGNANT : ABDERRAHIM ALLANI AUDITOIRE : 1ERE ANNEE GL

Objectifs
Développer des pages Web dynamiques contenant des fonctions PHP.

Exercice 1
On définit le tableau suivant :

$personnes = array(
'Directeur'=> array("prenom" => "Mohamed", "nom" => "Ali", "age" => 55,
"ville" => "Tunis"),
'Financier'=> array("prenom" => "Fahima", "nom" => "Kadhi", "age" => 52,
"ville" => "Sousse"),
'Comptable'=> array("prenom" => "Halima", "nom" => "Ben Ahmed", "age"
=> 38, "ville" => "Kef"),
'Informaticien'=> array("prenom" => "Ahmed", "nom" => "EL Kefi", "age" =>
33, "ville" => "Jendouba"),
'Secretaire'=> array("prenom"=>"Samiha", "nom"=>"Attia", "age"=>46,
"ville"=>"Gabes"),
'Chauffeur' => array("prenom"=>"Halim", "nom"=>"Ben
Slama","age"=>27,"ville"=>"Beja")
);

1. Quelles sont les clés du tableau $personnes et leur type ? De quel type sont les valeurs
de ce tableau ? Quelle est la valeur associée à ’ 'Informaticien' ?
2. Créer un fichier PHP en utilisant le logiciel Notepad++.
3. Enregistrer le fichier sous le nom affichage.php dans le dossier PHP de votre site web.
4. Écrire une fonction permettant d'afficher le tableau dans son ensemble. Ajouter une
première ligne contenant les clés ’prenom’, ’nom’, ’age’ et ’ville’.

1
5. Écrire une fonction permettant d’afficher sous forme de tableau les informations des
personnes habitant dans une ville donnée en paramètre. Par exemple, si la fonction est
appelée avec le tableau $personnes défini précédemment et la ville ’Tunis’, le tableau
affiché doit alors contenir uniquement la ligne relative au directeur. Le code est
enregistré dans le fichier recherche.php.

6. Valider le code HTML résultat.

Exercice 2

1. Ecrire une fonction ajouter() qui prend en entrée deux entiers et renvoie leur somme.
Cette fonction sera contenue dans la page fonctions.php
2. Ecrire ensuite le script de la page form.php qui récupère à travers un formulaire les
deux entiers et en affiche la somme. L'action du formulaire renvoie à la même page.

2
Correction

Exercice 1

Affichage.php

<!DOCTYPE HTML >


<head>
<meta charset="utf-8" />
<title>Fonction de lecture de tableaux multidimensionnels</title>
</head>
<body>
<?php
//Définition de la fonction
function tabmulti($tab)
{
echo "<table>";

$ligne = 0;
foreach($tab as $pseudo => $info)
{
if($ligne==0){
echo "<tr>";
foreach($info as $c => $v)
echo "<th>" . $c . "</th>" ;
echo "</tr>";
$ligne ++;
}
echo "<tr>";
foreach($info as $v)
echo "<td>" . $v . "</td>" ;
echo "</tr>";
$ligne ++;
}
echo "</table>";}

//Définition des tableaux


$personnes = array(
'Directeur'=> array("prenom" => "Mohamed", "nom" => "Ali", "age" => 55, "ville" => "Tunis"),
'Financier'=> array("prenom" => "Fahima", "nom" => "Kadhi", "age" => 52, "ville" => "Sousse"),
'Comptable'=> array("prenom" => "Halima", "nom" => "Ben Ahmed", "age" => 38, "ville" =>
"Kef"),
'Informaticien'=> array("prenom" => "Ahmed", "nom" => "EL Kefi", "age" => 33, "ville" =>
"Jendouba"),
'Secretaire'=> array("prenom"=>"Samiha", "nom"=>"Attia", "age"=>46, "ville"=>"Gabes"),
'Chauffeur' => array("prenom"=>"Halim", "nom"=>"Ben Slama","age"=>27,"ville"=>"Beja")
);
//Appel de la fonction
tabmulti($personnes);
?>
</body>
</html>
3
Recherche.php

<!DOCTYPE HTML >


<head>
<meta charset="utf-8" />
<title>Recherche</title>
</head>
<body>
<?php
//Définition de la fonction
function affichageHabitantsVille ($tab, $ville )
{

echo "<table>";
$entete = true;
foreach($tab as $pseudo => $info)
{
if($entete)
{
echo "<tr>";
foreach($info as $c => $v)
echo "<th>" . $c . "</th>" ;
echo "</tr>";
$entete = false ;
}
if($info["ville"]==$ville)
{
echo "<tr>";
foreach($info as $v)
echo "<td>" . $v . "</td>" ;
echo "</tr>";
}
}
echo "</table>";
}
//Définition des tableaux
$personnes = array(
'Directeur'=> array("prenom" => "Mohamed", "nom" => "Ali", "age" => 55, "ville" => "Tunis"),
'Financier'=> array("prenom" => "Fahima", "nom" => "Kadhi", "age" => 52, "ville" => "Sousse"),
'Comptable'=> array("prenom" => "Halima", "nom" => "Ben Ahmed", "age" => 38, "ville" =>
"Kef"),
'Informaticien'=> array("prenom" => "Ahmed", "nom" => "EL Kefi", "age" => 33, "ville" =>
"Jendouba"),
'Secretaire'=> array("prenom"=>"Samiha", "nom"=>"Attia", "age"=>46, "ville"=>"Gabes"),
'Chauffeur' => array("prenom"=>"Halim", "nom"=>"Ben Slama","age"=>27,"ville"=>"Beja")
);

//Appel de la fonction
$ville="Tunis";

affichageHabitantsVille ($personnes, $ville);

?>
</body> </html>
4
Exercice 2:

Code de la page: form.php

<!DOCTYPE html>
<head>
<meta charset="utf-8" />
<title>formulaire</title>
</head>
<body>
<?php
include ("fonction.php"); // Inclusion du fichier contenant le fichier
?>
<?PHP
/*si on garde ces 2 lignes on risque de trouver une erreur à la 1er exécution donc vaut mieux ajouter
un test avec isset*/
//$val1 = $_GET['val_1'];
//$val2 = $_GET['val_2'];

if (isset($_GET["val_1"])) {$val_1 = $_GET['val_1']; } else {$val_1 = "";}


if (isset($_GET["val_2"])) {$val_2 = $_GET['val_2']; } else {$val_2 = "";}
?>

<form name="saisie" method="GET" action="form.php">


<table>
<tr>
<td >Valeur 1 :</td>
<td><input type=text name="val_1" value="<?PHP echo $val_1; ?>" /></td>
</tr>
<tr>
<td>Valeur 2 :</td>
<td><input type=text name="val_2" value="<?PHP echo $val_2; ?>" /></td>
</tr>
<tr>
<td>Le Resultat :</td>
<td><input type=text name="Rslt2" value="<?PHP echo $Rslt
=ajoutez($val_1,$val_2); ?>" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name = "bt_submit" value="Calculer" /></td>
</tr>
</table>

</form>
</body>
</html>

5
Code de la page: fonction.php

//Aucun code HTML ne doit figurer dans ce fichier

<?php
function ajoutez($val1, $val2)
{
if( ($val1 != "" ) && ($val2 != "" ))
{
$Rslt = $val1 + $val2 ;
}
else
{
$Rslt = "val indispo" ;
}
return $Rslt;
}
?>

Vous aimerez peut-être aussi