Vous êtes sur la page 1sur 7

Série de TD –TP

HTML/CSS/PHP

Exercice 1
Parmi les variables suivantes, lesquelles ont un nom valide :
mavar, $mavar, $var5, $_mavar, $_5var, $__élément1, $hotel4* ?

Exercice 2
Donner les valeurs de $x, $y, $z à la fin du script suivant :
$x="PostgreSQL";

$y="MySQL";

$z=&$x;

$x="PHP 5";
$y=&$x;
Exercice 3
Réaliser une fonction qui nous retourne le verdict du nombre que l'on vient
d'entrer : pair ou impair ? créer un formulaire de saisie, et une analyse du nombre
entré

Exercice 4
fonctions.php
créer une fonction qui, quand on lui passe un nombre, affiche le verdict "est un
nombre premier" ou "n'est pas un nombre premier" ;
A ce propos, 0 n'est pas un nombre premier non plus (car on ne peut pas le diviser
par zéro), mais vous le gérerez comme une exception...
premiers.php,
proposerez un formulaire pour que l'utilisateur entre un nombre, disons entre 1 et
10 000, puis traiter le nombre entré en appelant la fonction en cas de clic sur
validation.
Vous afficherez alors le verdict sous la forme :
"99 n'est pas un nombre premier." ou bien "59 est un nombre premier" etc...

Exercice 5

1) Écrivez un tableau multidimensionnel associatif dont les clés sont des noms
de personne et les valeurs des tableaux indicés contenant le prénom, la ville
de résidence et l’age de la personne.
2) Écrivez un tableau multidimensionnel associatif dont les clés sont des noms
de personne et les valeurs des tableaux associatifs dont les clés sont le
prénom, la ville de résidence et l’age de la personne avec une série de
valeurs associées.

Utilisez une boucle foreach pour lire les tableaux des questions 1 et 2.

Exercice 6 : Tableau à deux dimensions:


On définit le tableau suivant appelé personnes formé de : 4 champs ( prenom,
nom, age,ville ) et 6 tuples de votre choix.

Question 6.1 Ecrire la syntaxe php de la variable personnes présentant le tabeau


associatif.

Quelles sont les clés du tableau $personnes et leur type ? De quel type sont les
valeurs de ce tableau ?

Question 6.2 : Comment accéder à la valeur de ( L4C3) dans le tableau ? à la valeur


(L3C4) ? Au tableau contenant les valeurs de la dernière ligne du tableau ?
Question 6.3 : Ecrire une function permettant d’afficher le tableau dans son
ensemble. Ajouter une première ligne contenant les clés: ’prenom’, ’nom’, ’age’ et
’ville’. Ajouter en suite un fichier CSS pour le fond ( couleurs) et la forme du
tableau.

Exercice 7 : Questionnaire à choix multiples


Question 7.1: Le but de cet exercice est de faire une première page Web contenant
des questions avec plusieurs réponses possibles (une seule d’entre elles étant
correcte). L’utilisateur doit alors répondre aux différentes questions et le site
affiche alors le score obtenu par l’utilisateur.
Question 7.2: Ajouter sur la page d’accueil un formulaire pour que l’utilisateur
puisse saisir son nom. Cette donnée sera utilisée par la suite pour personnaliser
l’affichage du site.
Question 7.3 : Améliorer la présentation de la page Web à l’aide du CSS.

C_r_ée_z_ _u_n_ _f_o_r_m_u_l_a_i_r_e_ _p_e_r_m_e_t_t_a_n_t_


_l_’i_n_s_e_r_t_i_o_n_ _d_e_ _n_o_u_v_e_l_l_e_s_ _d_o_n_n_ée_s_ _d_a_n_s_
_l_a_ _t_a_b_l_e_ _

C_r_ée_z_ _u_n_ _s_c_r_i_p_t_ _p_e_r_m_e_t_t_a_n_t_ _d_’a_f_f_i_c_h_e_r_


_l_e_ _c_o_n_t_e_n_u_ _d_e_ _l_a_ _t_a_b_l_e_ _

Exercice8 : 8.1 Créer un tableau ayant pour valeur les noms des douze mois de
l’année. Quelles sont alors les clés ? Parcourir en suite le tableau pour afficher les
mois de l’année sous forme de liste ordonnée.
8.2 Créer un tableau associant à chaque mois de l’année le nombre de jours du
mois. (On supposera que l’année n’est pas bissextile.) Quelles sont alors les clés ?
Les valeurs ?Afficher, sous forme de tableau, le nombre de jours de chaque mois.
Exercice 9

Créer un fichier CSS permettant d’obtenir le menu donné par la figure suivante:

<html>
<head><title><Pair ou impair ?</title></head>
<body>
<?php
//fonction qui fait le diagnostic
function parite($nombre){
//si le reste de la division est zéro, c'est pair
if (($nombre%2)==0){
//on initialise les deux valeurs de verdict
$verdict='pair';
}
else{
$verdict='impair';
}
//on renvoie le verdict, tout à la fin
return $verdict;
}
?>
<form method="POST" action="fonction.php">
Entrez votre nombre<input type="text" name="num"/>
<input type="submit" name="valider" value="OK"/>
</form>
<?php
//si user a cliqué OK
if(isset($_POST['valider'])){
//récupère la valeur entrée
$nombre=$_POST['num'];
//place dans $toto la valeur de retour de ma fonction
$toto=parite($nombre);
//affiche le verdict entier
echo 'Ce nombre est '.$toto.'.';
}
?>
</body>
</html>

fonctions.php
<?php
function premiers($nombre){
/*Cette variable fait office de flag (voir explications plus haut)
Ici flag est "éteint"*/
$flag=0;
/*Cette boucle teste toutes les valeurs inférieures à $nombre
Pour voir si ce sont des multiples potentiels
Donc ici, $i représente le multiple potentiel*/
for($i=2;$i<$nombre;$i++){
//si $nombre modulo $i égal zéro
//revient à dire : si $i est un diviseur de $nombre
if($nombre%$i==0){
//initialise le verdict
$verdict='n\'est pas premier';
//allume le flag
$flag=1;
//Quitte la boucle immédiatement
break;
}
}
/*Si après la boucle entière
Le flag est toujours éteint
C'est un nombre premier !*/
if ($flag==0){
$verdict='est premier';
}
/*Gérer l'exception zéro
qui est un peu un cas particulier*/
if($nombre==0){
$verdict='n\'est pas premier';
}
//renvoie le verdict en sortant de la fonction
return $verdict;
}
?>

premiers.php
<html>
<head><title>Nombres premiers</title></head>
<body>
<?php
//intègre toutes les fonctions du fichier voisin
include('fonctions.php');
//présente le formulaire
?>
<form method="POST" action="premiers.php">
Entrez votre nombre (entre 1 et 10 000 SVP)<input type="text"
name="num"/>
<input type="submit" name="valider" value="OK"/>
</form>
<?php
//si user a cliqué OK
if(isset($_POST['valider'])){
//récupère la valeur entrée
$nombre=$_POST['num'];
//convoque la fonction premiers
$verdict=premiers($nombre);
//affiche le verdict entier mis en forme.
echo $nombre.' '.$verdict.'.';
}
?>
</body>
</html>

Vous aimerez peut-être aussi