[PHP] probleme condition IF
tobec
-
Alain_42 Messages postés 5413 Statut Membre -
Alain_42 Messages postés 5413 Statut Membre -
Bonjour a tous
Voila, dans un feuille PHP je souhaiterai afficher une valeur de la BDD lorsque l'on clique sur un bouton.
je trouve pas la condition a mettre dans ma boucle if qui permet cela.
Voila une partie de mon code (je m'excuse aupres des puristes, je débute en PHP)
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
<form action="admin.php" method="post">
<p>Demande de tirage : </p><input type="submit" value="Demander" name="ok">
</form>
<?php
if ($_POST['ok']==on)
{
mysql_connect("localhost","root","");
mysql_select_db("client");
$reponse = mysql_query("select * from infoclient order by RAND()limit 1") or die(mysql_error());
while ($donnees=mysql_fetch_array($reponse))
{
?>
<p>
<strong>CLIENT:</strong> : <?php echo $donnees['nom_client'];?> <?php echo $donnees['prenom_client'];?> <br/>
<?php echo $donnees['adr_client'];?> <?php echo $donnees['cp_client']; ?> <?php echo $donnees['ville_client']; ?> <br/>
telephone : <?php echo $donnees['tel_client'];
}
}
""""""""""""""""""""""""""""""""""""""""""""
quelqu un aurait il une idée?
merci a tous
Voila, dans un feuille PHP je souhaiterai afficher une valeur de la BDD lorsque l'on clique sur un bouton.
je trouve pas la condition a mettre dans ma boucle if qui permet cela.
Voila une partie de mon code (je m'excuse aupres des puristes, je débute en PHP)
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
<form action="admin.php" method="post">
<p>Demande de tirage : </p><input type="submit" value="Demander" name="ok">
</form>
<?php
if ($_POST['ok']==on)
{
mysql_connect("localhost","root","");
mysql_select_db("client");
$reponse = mysql_query("select * from infoclient order by RAND()limit 1") or die(mysql_error());
while ($donnees=mysql_fetch_array($reponse))
{
?>
<p>
<strong>CLIENT:</strong> : <?php echo $donnees['nom_client'];?> <?php echo $donnees['prenom_client'];?> <br/>
<?php echo $donnees['adr_client'];?> <?php echo $donnees['cp_client']; ?> <?php echo $donnees['ville_client']; ?> <br/>
telephone : <?php echo $donnees['tel_client'];
}
}
""""""""""""""""""""""""""""""""""""""""""""
quelqu un aurait il une idée?
merci a tous
A voir également:
- [PHP] probleme condition IF
- Excel cellule couleur si condition texte - Guide
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Excel condition ou - Guide
- Condition optimale téléphone ✓ - Forum Mobile
6 réponses
bonjour,
essai de remplacer
if ($_POST['ok']==on)
par
if ($_POST['Demander']=="ok")
de même, comme dans ta requête SQL tu met la clause " limit 1 " signifiant que tu limite le nombre de résultat à 1, par de boucle à faire puisqu'un seul cas, pas de while, les echo $donnees['xxxxxxx'] suffisent
essai de remplacer
if ($_POST['ok']==on)
par
if ($_POST['Demander']=="ok")
de même, comme dans ta requête SQL tu met la clause " limit 1 " signifiant que tu limite le nombre de résultat à 1, par de boucle à faire puisqu'un seul cas, pas de while, les echo $donnees['xxxxxxx'] suffisent
ça ne fonctionne pas comme ça, le seul but d'un bouton submit est de passer à une page suivante, tu ne transmets aucune valeur avec ton formulaire.
il faut que tu rajoute un champ, que tu peux cacher si tu le souhaites.
<input type="hidden" name="tirage" value="oui" />
et pour ton if :
if ($_POST['tirage']== "oui")
il faut que tu rajoute un champ, que tu peux cacher si tu le souhaites.
<input type="hidden" name="tirage" value="oui" />
et pour ton if :
if ($_POST['tirage']== "oui")
Merci a tout les deux.
Effectivement le while ne sert pas a grand chose...je le changerai...^^
Par mon problème est toujours la.
J'ai rajouté un else pour voir si le programme passait dans la condition ou pas....
La boucle IF($_POST['tirage']=="oui")
else
echo "pb";
s'execute au chargement du formulaire puisque le "pb" s'affiche dès le chargement.
je vous remet le code, si vous avez d'autres idées pour m'aider.
Encore un grand merci merci a vous.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
<form action="admin.php" method="post">
<p>Demande de tirage : <input type="submit" value="Demander" name="ok"/>
<input type="hidden" name="tirage" value="oui"/>
</p>
</form>
<?php
if($_POST['tirage']=="oui")
{
mysql_connect("localhost","root","");
mysql_select_db("client");
$reponse = mysql_query("select * from infoclient order by RAND()limit 1") or die(mysql_error());
while ($donnees=mysql_fetch_array($reponse))
{
?>
<p>
<strong>CLIENT:</strong> : <?php echo $donnees['nom_client'];?> <?php echo $donnees['prenom_client'];?> <br/>
<?php echo $donnees['adr_client'];?> <?php echo $donnees['cp_client']; ?> <?php echo $donnees['ville_client']; ?> <br/>
telephone : <?php echo $donnees['tel_client'];?>
</p>
<?php
}
}
else
{
echo "pb";
}
}
?>
""""""""""""""""""""""""""""""""""""""""""""""""""""
Effectivement le while ne sert pas a grand chose...je le changerai...^^
Par mon problème est toujours la.
J'ai rajouté un else pour voir si le programme passait dans la condition ou pas....
La boucle IF($_POST['tirage']=="oui")
else
echo "pb";
s'execute au chargement du formulaire puisque le "pb" s'affiche dès le chargement.
je vous remet le code, si vous avez d'autres idées pour m'aider.
Encore un grand merci merci a vous.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
<form action="admin.php" method="post">
<p>Demande de tirage : <input type="submit" value="Demander" name="ok"/>
<input type="hidden" name="tirage" value="oui"/>
</p>
</form>
<?php
if($_POST['tirage']=="oui")
{
mysql_connect("localhost","root","");
mysql_select_db("client");
$reponse = mysql_query("select * from infoclient order by RAND()limit 1") or die(mysql_error());
while ($donnees=mysql_fetch_array($reponse))
{
?>
<p>
<strong>CLIENT:</strong> : <?php echo $donnees['nom_client'];?> <?php echo $donnees['prenom_client'];?> <br/>
<?php echo $donnees['adr_client'];?> <?php echo $donnees['cp_client']; ?> <?php echo $donnees['ville_client']; ?> <br/>
telephone : <?php echo $donnees['tel_client'];?>
</p>
<?php
}
}
else
{
echo "pb";
}
}
?>
""""""""""""""""""""""""""""""""""""""""""""""""""""
Désolé, mais même si il n'y a pas d'autre champ input, le bouton est posté avec le formulaire
<form action="admin.php" method="post">
<p>Demande de tirage : </p><input type="submit" value="Demander" name="ok">
</form>
donc il faut tetser:
par contre si j'ai une remarque, le name du bouton est mal choisi ok ce n'est pas parlant
j'aurais mis plutot "demander'
ce qui donne:
et pour le test:
<form action="admin.php" method="post">
<p>Demande de tirage : </p><input type="submit" value="Demander" name="ok">
</form>
donc il faut tetser:
if(isset($_POST['ok']) AND $_POST['ok'] =="Demander"){
//action
}
par contre si j'ai une remarque, le name du bouton est mal choisi ok ce n'est pas parlant
j'aurais mis plutot "demander'
ce qui donne:
<form action="admin.php" method="post"> <p>Demande de tirage : </p><input type="submit" value="Demander" name="demander"> </form>
et pour le test:
if(isset($_POST['demander']) AND $_POST['demander'] =="Demander"){
//action
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci pour votre aide
je crois que j'ai trouvé mon problème...enfin je crois...^^
la page est chargée a partir d'une autre page...
le premier test est alors de vérifier si le mot de passe entré dans le premier formulaire est le bon.
code du deuxieme formulaire :
if ($_POST['pass']=="toto")
{
?>
<form action="admin.php" method="post">
<p>Demande de tirage : <input type="submit" value="Demander" name="demander">
</p>
</form>
etc....
ce test fonctionne au premier chargement, mais le problème pourrait il venir du fait que l'on recharge la page (admin.php) avec le bouton "demander" et alors il perdrai la valeur de $_POST['pass']?
C'est juste une idée....si c'est ca je m'en veux de pas vous avoir expliqué le truc du mot de passe avant....
merci encore a vous
je crois que j'ai trouvé mon problème...enfin je crois...^^
la page est chargée a partir d'une autre page...
le premier test est alors de vérifier si le mot de passe entré dans le premier formulaire est le bon.
code du deuxieme formulaire :
if ($_POST['pass']=="toto")
{
?>
<form action="admin.php" method="post">
<p>Demande de tirage : <input type="submit" value="Demander" name="demander">
</p>
</form>
etc....
ce test fonctionne au premier chargement, mais le problème pourrait il venir du fait que l'on recharge la page (admin.php) avec le bouton "demander" et alors il perdrai la valeur de $_POST['pass']?
C'est juste une idée....si c'est ca je m'en veux de pas vous avoir expliqué le truc du mot de passe avant....
merci encore a vous
ha oui c'est sur que la tu pert le mot de pass
pour le faire suivre de page en page tu peux mettre un champ caché <input type="hidden" name="pass" value="<?php echo $_POST['pass']" ?>">
mais c'est pa scool car si qq un fit afficher la source de la page il verra le mot de passe
la solution c'est les SESSIONS php
tu stockes le mot de pass dans une variable de session
vas voir sur G... comment faire
ou ce tuto:
http://www.phpfrance.com/tutoriaux/index.php/2005/07/20/34-les-sessions-php
pour le faire suivre de page en page tu peux mettre un champ caché <input type="hidden" name="pass" value="<?php echo $_POST['pass']" ?>">
mais c'est pa scool car si qq un fit afficher la source de la page il verra le mot de passe
la solution c'est les SESSIONS php
tu stockes le mot de pass dans une variable de session
vas voir sur G... comment faire
ou ce tuto:
http://www.phpfrance.com/tutoriaux/index.php/2005/07/20/34-les-sessions-php