STIC:STIC I - exercice 7 (Nestor-Pixel)

De EduTech Wiki
Aller à la navigation Aller à la recherche

Cette page fait partie des cours STIC I et STIC II

Enoncé de l'exercice 7

Cet exercice du cours STIC I vous permet:

  • d'apprendre à utiliser des formulaires HTML
  • faire des traitements simples avec PHP

Tâche

  • Faites un formulaire HTML (soit une page HTML, soit généré par PHP)
  • Faites un script PHP qui traite les informations

Emplacement de la page d'accueil / rapport:

/etu-maltt/nestor/<login>/stic/ex7/

Contraintes

  • Contenu selon vos envies et possibilités, mais en rapport avec les thématiques de MALTT

Conseil: Adaptez la complexité du formulaire à vos capacités techniques. Si elles sont plutôt basesses, faites un quiz avec des questions à choix multiple (bouton radios)

Le rapport
  • Titre, auteur et date
  • Liens vers le dispositif.
  • Objectifs du dispositif: Elle sert à quoi / quelle population ?
  • Quelques notes sur le design
  • La production: bref résumé de la démarche
  • Difficultés, auto-évaluation, remarques
  • Ressources utilisées, bibliographie.

Evaluation

  1. le script marche
  2. validité des pages (formulaire et résultat)
  3. créativité
  4. utilité
  5. ergonomie de la page
  6. respect de principes de design par ex. "instructional design" pour les règles d'un QCM
  7. Qualité du rapport: Objectifs du dispositif, design, etc.
  8. Bonus: XHTML au lieu de HTML, récupération de donnés (sûre!) dans un fichier
  9. Malus: Récupération de donnés pas sûre et formulaire attirant les spammers.

Activité en salle de classe

(1) Copiez /guides/php/examples/simple-calculate/formulaire.text ou le code ci-dessous

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>un simple test avec PHP (25-Mar-1999)</title>
  </head>
  <body>
    <h1>Un simple test avec PHP</h1>
    Remplissez le formulaire suivant SVP: <p>
<form action="calcul.php" method="post">

Quelles sont vos connaissances de HTML ?
<input type="radio" name="choice" value="1" checked>faibles
<input type="radio" name="choice" value="2">moyennes
<input type="radio" name="choice" value="3">bonnes
<br>
Indiquez votre expertise en programmation:
<input type="radio" name="choice2" value="1" checked>absente
<input type="radio" name="choice2" value="2">moyenne
<input type="radio" name="choice2" value="3">bonne
<P>
<input type="submit" value="Voir le résultat!">

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

(2) Copiez /guides/php/examples/simple-calculate/calcul.phps ou le code ci-dessous dans un fichier *.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
  <HEAD>
    <TITLE>Un simple test avec PHP (calcul des résultats) (29-Jun-1998)</TITLE>
   <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" >
  </HEAD>
  <BODY>
    <H1>Un simple test avec PHP (calcul du résultat)</H1>
<hr>

<?php

// Récupération des variables du formulaire
$choice = $_POST['choice'];
$choice2 = $_POST['choice2'];

// Ensuite on calcule le score
$score = $choice + $choice2;

// Et on donne le résultat en fonction du score obtenu
echo "<h3>Votre score est de " . $score . "</h3>";
if ($score < 3) {
  echo "<p>Vous êtes un débutant</p>";
} elseif ($score < 5) {
  echo "<p>Vous avez un niveau moyen</p>";
} else {
  echo "<p>Vous êtes un expert !</p>";
}
?>

<hr>
<a href="http://validator.w3.org/check?uri=referer">Valid HTML</a>
</BODY>
</HTML>


(3) Modifiez le formulaire et le script PHP. Ajoutez par exemple une question.

Liens

Transparents

Tutoriels PHP

Voir les liens PHP dans edutechwiki (en):

Exemples

Référence

Livres

Il existe des centaines. Pas facile de choisir

  • Squier, Dan et al. (2004). Beginning PHP5, Wrox, ISBN 0764557831 (ok pour débutant)
  • Gilmore, Jason, Beginning PHP 5 and MySQL: From Novice to Professional (Paperback) ISBN 1893115518.
  • Borde et al., PHP 5, ISBN 2-7429-3871-0 (moyen, un peu long aussi)
  • Lehrdorf, R. Programming PHP, ISBN 1565926102 (pour programmeurs plutot, par l'inventeur de PHP)
  • Spainhour & Eckstein, WebMaster in a Nutshell, O'Reilly (référence pour HTTP, HTML, Javascript, PhP), ISBN-10 0596003579