6.1. Données utilisateur

La variable REQUEST est un dictionnaire qui représente la chaîne de requête si le script est appelé par la méthode HTTP GET, ou les champs d'un formulaire soumis par la méthode HTTP POST

Les clés de REQUEST sont les noms des champs. Les valeurs sont les valeurs des champs

  • sous forme de chaîne de caractères,
  • ou de liste si le nom du champ se termine par [] (s'il vient d'un champ de formulaire <SELECT MULTIPLE> par exemple)

Supposons que vous ayez un formulaire HTML de cette forme :

<form action="monScript.py">
  Spam <input name="spam">
  <br><select multiple name="animal[]">
  <option value="chien">Chien
  <option value="chat">Chat
  <option value="grenouille">Grenouille
  </select>
  <br><input type="submit" value="Ok">
</form>

Dans monScript.py les données d'entrée seraient affichées ainsi :

print "<br>Spam vaut ",REQUEST["spam"]
if REQUEST.has_key("animal"):
    print "<br>L'animal est ",str(REQUEST["animal"])

L'accès à ces données est aussi possible par un raccourci, consistant en un blanc souligné _ ajouté au début du nom de champ. Le code ci-dessus pourrait être écrit de cette façon plus concise :

print "<br>Spam vaut ",_spam
if REQUEST.has_key("animal"):
    print "<br>L'animal est ",str(_animal)

Le blanc souligné est introduit pour réduire les risques de conflits de noms avec les noms réservés de Python ou avec le nom de modules utilisés fréquemment