IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Débutant : formulaire et PHP


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 71
    Par défaut Débutant : formulaire et PHP
    Bonjour

    Je commence à travailler PHP avec cours, docs etc... avec EasyPHP 1.8, mais j'essaie des formulaires de base et ça ne passe pas.
    Par exemple celui-ci qui comprend 2 fichiers tapés avec un simple éditeur de texte,
    index.php3 et TraiteFormulaire.php3, fichiers qui sont dans le même répertoire

    index.php3
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <html>
    <head>
    <title>Document sans-titre</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
     
     <FORM ACTION="TraiteFormulaire.php3" METHOD="POST">
        Votre nom : <INPUT TYPE=TEXT NAME=nom> 
        Votre age : <INPUT TYPE=TEXT NAME=age>
        <INPUT TYPE=SUBMIT NAME="Ok">        
     </FORM>
     
    </body>
    </html>
    TraiteFormulaire.php3
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
         Bonjour <?php echo $nom; ?>, <P>
         vous avez bien <?php echo $age; ?> ans <BR>
         cette année ?
    Eh bien je suis incapable de le faire fonctionner, les 2 variables nom et age ne sont pas reconnues
    le résultat qui s'affiche :
    Bonjour
    Notice: Undefined variable: nom in e:\easyphp1-8\www\essai_2\traiteformulaire.php3 on line 1
    etc...
    J'ai essayé d'autres exemples, idem et je ne comprends pas pourquoi.
    N'y a-t-il pas quelque chose à paramètrer dans EasyPHP que j'aurais oublié ?
    Je suis désolé de poster un message pour un problème aussi simple, mais je ne vois pas ce que j'ai oublié...
    Merci

  2. #2
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Salut, ton cours est trop vieu et il parle de la version 3 de php.
    Le mieux serait que tu trouves un nouveau cours histoire de partir sur des bonnes bases.
    Dans le pire des cas il faudrait configurer PHP mais je te conseille vraiment de trouver des nouveau tutos, il y en a d'ailleurs sur ce site ^^.
    Bye

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 71
    Par défaut
    Bonjour

    Oui, mais cet exemple est justement celui d'un tutoriel trouvé ici. C'est tellement trivial qu'on doit le trouver partout. Toutes mes docs et cours doivent venir d'ici.
    Mais ce qui me gène c'est qu'ici c'est pas une question de version de PHP, il faut que je comprenne ce qui ne va pas.

  4. #4
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Si, c'est une question de configuration de PHP, depuis la version 4.3 (je crois) il y a un paramètre de config qui a changé ne permettant plus l'auto-déclaration de certaines variables. Donc quand tu envoies des données en post, comme dans ton formulaire (method="post"), tu dois les appeler directement depuis le tableau $_POST (j'espère que tu as déjà vu les tableaux), ce qui donne :

    echo $_POST['nom'];

    Si tu veux vraiment pouvoir fonctionner comme dans le tuto, tu peux chercher la ligne suivante :
    register_globals = off
    et la remplacer par :
    register_globals = on

    dans apache\php.ini

    Mais il faut savoir que la majorité des hébergeurs a les Register Global à off (trous de sécurité potentiels à on), donc les scripts que tu fais chez toi auront de grandes chances de ne pas fonctionner sur des serveurs distants.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 71
    Par défaut
    Re-Bonjour

    Ah c'est cela, avec $_POST['nom'] cela marche très bien.
    Je cherchais depuis ton premier message dans la doc que j'ai (PHP 4) les changements par rapport à PHP3 mais je n'avais rien vu. Si effectivement c'est depuis la version 4.3....
    Je vais récupèrer les doc correspondant le plus possible à la version que j'ai. Et pour les tuto je vais essayer d'adapter.

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Formulaire affichage double
    Par hudsson dans le forum Access
    Réponses: 8
    Dernier message: 21/03/2006, 19h42
  2. formulaire et php
    Par lolo_bob2 dans le forum Langage
    Réponses: 9
    Dernier message: 16/03/2006, 16h09
  3. [MySQL] Filtre via formulaire HTML/PHP dans Base mySQL
    Par Al3x dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 14/01/2006, 17h27
  4. Recuperer les données d'un formulaire en PHP
    Par mekdar dans le forum Langage
    Réponses: 2
    Dernier message: 29/11/2005, 16h41
  5. récupérer une valeur d'un formulaire en php
    Par feten dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 21/11/2005, 14h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo