Formulaire PHP

Fermé
fLEXIJUJU - 4 nov. 2003 à 18:04
 Utilisateur anonyme - 11 juin 2004 à 11:58
Bonjour à tous, merci pour vos réponse de la derniere fois qui m'ont permis de bien avancer.
J'ai encore un probleme pour récuperer le contenu d'un champ HTML en PHP.

ya une erreure : "variable indéfinie " dans le code suivant :

<?php if($mon_champ) { ?>


Votre champ contenait :

<b><?php echo $mon_champ; ?></b>

<br><br>
<?php } ?>

<form method="POST">
<input name="mon_champ">
<input type="submit" value="OK">
</form>

Tout est dans la meme page, est ce corect ? ou est ma faute ? que dois-je faire ?

est ce important de mettre .php ou .php3 Ya une différence ?
merci

16 réponses


<?php if($mon_champ) {
echo " Votre champ contenait : <b> $mon_champ</b>";
} ?>  

<br><br> 

<form method="POST"> 
<input name="mon_champ"> 
<input type="submit" value="OK"> 
</form> 

0
voici une autre version qui marche aussi, mais faire attention aux accolades


<?php if($mon_champ) {} ?> 


Votre champ contenait : 

<b><?php echo $mon_champ; ?></b> 

<br><br> 


<form method="POST"> 
<input name="mon_champ"> 
<input type="submit" value="OK"> 
</form> 
0
Merci de ta réponse, je viens de faire un copier/coller de ton texte et j'ai encore la meme erreur :

Variable indéfinie a cette ligne : <?php if($mon_champ) {

Que faire ? il y a des choses a rajouter ?
Le programme ne connait pas la variable mon_champ...

Je viens de voir ta deuxieme réponse, je teste et je te dis
merci
0
Toujours la meme probleme, je pense qu'il doit y avoir un probleme.

Le code que tu me donne, je dois juste le mettre entre les balises <body> ? c'est ca ?

et je dois enregistrer mon code en .php ?

il doit y avoir un truc qui ne va pas, mais je ne sais pas koi

le programme ne reconnait pas la variable mon_champ
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
floopy Messages postés 124 Date d'inscription mercredi 24 septembre 2003 Statut Membre Dernière intervention 8 janvier 2004 9
4 nov. 2003 à 18:40
essaye ça
<?php
$mon_champ=$POST['mon_champ'];
 if($mon_champ) {
echo " Votre champ contenait : <b> $mon_champ</b>";
} ?>  <br><br> <form method="POST"> <input name="mon_champ"> <input type="submit" value="OK"> </form> 


sous easyphp 1.7 , il faut définir avec $_POST ou $_GET ( selon la
method 
du form )
0
Sur ma machine ca marche bien

selon la config d'apache sauvegarer le fichier en .php ou .php3 mais le plus souvent par default c'est .php

le test est effectué avec easyphp 1.6
0
Sur ma machine ca marche bien

selon la config d'apache sauvegarer le fichier en .php ou .php3 mais le plus souvent par default c'est .php

le test est effectué avec easyphp 1.6
0
Merci pour vos conseils, ca marche presque à l'exeption d'un détail.
J'ai bien défini le $_post mais j'ai encore une phrase au début qui me dit : "Notice : Undefined index mon_champ sur la ligne : $mon_champ=$_post['mon_champ'];

J'ai donc un message d'erreur mais sinon le script fonctionne bien, mais c'est tout de meme pas trés trés propre ce message d'erreur, vous savez comment faire en sorte qu'il disparaisse ?
merci de vos reponses.
a bientot
Julien
0
Bonjour est ce que kkun sait me dire comment afficher un texte sur le navigateur en PHP (fonction echo) simplement aprés que l'utilistateur est cliqué sur un bouton "ok" et pas au chargement de la page......


Autre probleme :

Avec la ligne <? echo $_post['nom']; j'ai une erreur du type Notice : indefined index nom
je ne sais pas comment l'enlever.
J'utilise easy PHP 1.7

Merci de votre aide.
0
Utilisateur anonyme
5 nov. 2003 à 16:55
Salut,

Tu es situé dans la meme page ? Si c'est le cas, ce n'est pas possible puisque le php est executé avant l'envoi de la page au navigateur. Il te faudrait du javascript pour faire ca... :/

Dans le cas ou tu es sur ta page de validation, <? echo $_POST['nom']; ?> est censé fonctionné. (Il faut bien respecté minuscules/majuscules)

Kalamit,
Parle à ma culasse, mon carter est malade. :)
0
Seb31 Messages postés 24 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 16 janvier 2004 6
5 nov. 2003 à 17:22
Il est possible d'afficher un message après la validation du formulaire. Pour ça, il te suffit de tester la valeur de bouton, du genre
if  ($_post['BA_OK'] == "OK") {echo ...}
avec
<input type="submit" name="BA_OK" value="OK">

ça va meme enlever ton erreur si ton echo se trouvait ds ce bout de code...

Seb
Ne pas avoir de but est aussi un but. 
0
Merci pour ta réponse, j'ai fait deux pages et ca marche trés bien, mais j'ai encore un petit probleme.

j'arrive trés bien a afficher les données de la page précedentes et je voudrais logigiquement les insérer dans une requette SQL mais la ca ne marche plus.

Voici mon code :

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

<?

$req='INSERT INTO `article` ( `Numero` , `Nom` , `Prix` , `Categorie` ) '
. ' VALUES ( \'6\', \'TEST\', \'TEST\', \'TEST\' );'
. ' ';

$result=mysql_query ($req);
?>


Je voudrais pouvoir rajouter a la place de TEST la valeur du champ de la page précedente (donc $_POST['nom']) mais ca ne marche pas, est ce que c'est un probleme de syntaxe ?

ceci est ce correct ?

$req='INSERT INTO `article` ( `Numero` , `Nom` , `Prix` , `Categorie` ) '
. ' VALUES ( \'6\', \'$_POST['nom']\', \'TEST\', \'TEST\' );'
. ' ';

En tout cas ca ne marche pas.
Merci pour ta réponse

Julien
0
Seb31 Messages postés 24 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 16 janvier 2004 6
5 nov. 2003 à 17:37
Essaye plutot:
$req = "INSERT INTO article (numero, nom, prix, categorie) VALUES ('6', '".$_POST['nom']."', 'TEST', 'TEST')";

ça marchera mieux

Seb
Ne pas avoir de but est aussi un but. 
0
Merci pour ta réponse, le sql marche trés trés bien.
Je suis trés content, ce forum c'est vraiment trop génial.
j'ai encore quelques petits soucis.

Je voudrais creéer une liste déroulante qui affiche tous les articles présents dans ma base.

est ce que je dois utiliser le code suivant ?

<? while ($row = mysql_fetch_row($result))
{

$nom=$row[1];

?>
<select name="liste" size =3>
<option value ="$nom">
</select>

<?
}
?>

Enfin ca ne marche pas, je pense que je dois ouvrir et fermer PHP mais je ne sais pas ou, vous pouvez m'aider ?

Résumé : afficher une liste avec tous les articles de ma base de donéees qui sont dans $nom

Merci a tous
0
salut tout le monde
je suis debutant de php.
j'ai essaye le programme pour le formulaire avec easyphp1.7 et avec extension php3 mais il reconnait pas les variables transmises par le formulaire et je sais pas comment je pourrais faire .
merci
0
deux choses à faire.

1) dans la page ou tu as tes formulaires tu dois nommer chaque champ.

2) En haut de la page qui recoit les variable (aprés validation), tu dois ecrire la ligne de code

$nouveau_nom=$_POST['nom_champ'];

Tu dois mettre une ligne comme celle ci pour chaque champ de ton formulaire.

Vérifie bien dans ta premiere page que tu utilise bien la méthode post pour envoyer ton formulaire.

Hésite pas à me dire si ca marche pas.
0
Jayce > Flexijuju
11 juin 2004 à 11:55
J'ai egalemnt le meme probleme et donc j'ai chercher chercher et j'ai trouver ta solution et ca ne marche pas pourtant il n'y pas d'erreur dans la code.
J'ai pas d'erreur sur ma page mais tout mes champs sont vide... je sais pas koi faire

<input type="text" name="NOM"> sur ma page de formulaire
$name=$_POST['NOM']; sur ma page de reponse

et kan je fait : echo"$name"; rien, nada

merci de votre aide
0
Utilisateur anonyme > Jayce
11 juin 2004 à 11:58
Mets l'integralité de tes sources, la page du formulaire et la page de traitement, stp.

Kalamit,
14 jours avant le soleil, la mer et les mouettes. :)
0
en fait ca marche
bien joue et merci bcp c tres sympa.
0