[RESOLU] B A BA formulaire php et easyphp

Eléphanteau du PHP | 23 Messages

12 nov. 2012, 01:12

Bonjour,

voulant me lancer dans la création d'un formulaire html/php, j'ai commencé avec les rudiments :
<body>
<form action="traite.php" method="post">
<p>
    <input type="text" name="nom" />
    <input type="submit" value="Valider" />
</p>
</form>
</body>
et
<p><h2>Réponses au formulaire :</h2></p>
Nom : <?php echo $_POST['nom']; ?>
<p>Retour au formulaire : <a href="formul.html">cliquer ici</a></p>
Malheureusement, impossible d'afficher la moindre valeur, à se demander si la variable $_POST a bien été créée !
J'utilise easyphp qui par ailleurs fonctionne parfaitement sur mon site.
Où devrais-je fouiner pour résoudre mon problème ?
Merci à tout le monde,
Paps

Mammouth du PHP | 2278 Messages

12 nov. 2012, 09:33

et si tu mets <?PHP au lieu de <?php ?
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Eléphanteau du PHP | 23 Messages

12 nov. 2012, 10:48

C'est exactement pareil !
Je remets ici les deux codes complets :
1) formul.html
<!DOCTYPE  html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Formulaire</title>
</head>
<body>
<form action="traite.php" method="post">
<p>
    <input type="text" name="nom" />
    <input type="submit" value="Valider" />
</p>
</form>
</body>
</html>
2) traite.php
<!DOCTYPE  html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Formulaire</title>
</head>
<body>
<p><h2>Réponses au formulaire :</h2></p>

Nom : <?PHP echo $_POST['nom']; ?>

<p>Retour au formulaire : <a href="formul.html">cliquer ici</a></p>
</body>
</html>
J'y perds mon latin...
Bonne journée,
Paps

ViPHP
xTG
ViPHP | 7331 Messages

12 nov. 2012, 12:33

Comment ouvres-tu ton script ?
file://c://EasyPHP/www/formul.html ou bien http://localhost/formul.html ?

ViPHP
ViPHP | 2577 Messages

12 nov. 2012, 12:52

Pour info, il faut regarder le source html dans le navigateur. Si xTG a bien cerné le problème, tu y trouveras "<?PHP echo $_POST['nom']; ?>" qui ne s'affiche pas dans le navigateur.

Eléphanteau du PHP | 23 Messages

12 nov. 2012, 14:15

Je lance le formulaire à partir de :

C:\Program Files (x86)\EasyPHP-12.1\www\musas\formul.html

("formul.html" est dans le répertoire "musas" de www, où est logé mon site)

Quand je regarde le "source" à partir du navigateur (IE9), je vois bien la totalité du code, que ce soit "formul.html" ou "traite.php".
Merci pour votre aide,
Paps

ViPHP
xTG
ViPHP | 7331 Messages

12 nov. 2012, 14:28

Quand tu lances EasyPHP il te lance un serveur Apache.
Mais si tu ne pointes pas sur ce serveur bah c'est comme si tu ouvrais du HTML...

Donc il faut utiliser l'adresse du serveur, à savoir http://localhost qui te ferra pointer sur le dossier www.
Donc ton script doit être appelée avec l'adresse : http://localhost/musas/formul.html

Eléphanteau du PHP | 23 Messages

12 nov. 2012, 15:43

Bon sang, mais c'est bien sûr ! Eh oui, ça marche !

A ma décharge, je dirais que ces manipulations Easyphp/Apache, etc. ne sont pas évidentes pour un débutant.
Je réalise - enfin! - que quand je lance mon site musas (sous-entendu /index.html), par Weblocal = F7, je suis dans le serveur.
Ce que je ne faisais pas avec "formul" ...
MERCI ! :D
Je profite de cette réponse pourposer d'autres questions :

1) si j'ai bien compris, "localhost" = 127.0.01, vrai ou faux ?

2) quand le lance http://localhost/musas/formul.html, j'obtiens un message "Site web trouvé, attente de la réponse...", et ça tourne très lontemps... Comment se fait-il que ce soit si long, puisque finalement on est en local ?

3) Formul.html étant lancé, IE m'affiche "Les paramètres Intranet sont déactivés par défaut", avec deux choix [Ne plus afficher ce message] et [Activer les paramètres Intranet].

Ces paramètres sont-ils importants, puis-je me contenter de ne plus les afficher ?

Je vais pouvoir enfin continuer l'élaboration de mon formulaire avec in fine l'envoi d'un mail contenant les données du formulaire. Et là, je crains d'avoir encore des questions...
Je vais peut-être trouver un exemple tout prêt de code à adapter à mes besoins ?

Merci pour ce début prometteur, et merci d'avance pour la suite,
Paps

ViPHP
ViPHP | 2577 Messages

12 nov. 2012, 15:51

1) Oui.
2) Peut être un problème de mémoire (swap ?) ou parfois la première page demandée est plus longue que la seconde à cause de la mise en veille.
3) Il me semble qu'IE permette une sécurité dépendant du site (sécurité moindre dans le cas de l'intranet puisque sur à priori)