[PHP] probleme condition IF
Fermé
tobec
-
15 janv. 2009 à 14:08
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 15 janv. 2009 à 17:04
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 15 janv. 2009 à 17:04
A voir également:
- [PHP] probleme condition IF
- Excel cellule couleur si condition texte - Guide
- Easy php - Télécharger - Divers Web & Internet
- Condition et excel - Guide
- Php natif - Forum PHP
- Recherchev avec condition si ✓ - Forum Excel
6 réponses
UnPassantQuiPasse
Messages postés
118
Date d'inscription
samedi 10 janvier 2009
Statut
Membre
Dernière intervention
30 octobre 2010
11
15 janv. 2009 à 14:13
15 janv. 2009 à 14:13
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
ThEBiShOp
Messages postés
8378
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
8 février 2021
1 566
15 janv. 2009 à 14:14
15 janv. 2009 à 14:14
ç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";
}
}
?>
""""""""""""""""""""""""""""""""""""""""""""""""""""
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
15 janv. 2009 à 14:34
15 janv. 2009 à 14:34
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
Alain_42
Messages postés
5361
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
894
15 janv. 2009 à 17:04
15 janv. 2009 à 17:04
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