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

PHP & Base de données Discussion :

Utilisation de while et if [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 18
    Par défaut Utilisation de while et if
    Bonjour,
    Voila j'ai un petit problème, en fait quand j'appuie sur le bouton, sa m'écrit tous le temps l'attaque de la ligne 1, alors que j'ai appuyer sur le bouton de l'attaque de la ligne 2. Et si je met le if ($_POST) dans le while, l'attaque s'affiche sans apuuyer sur le boutton...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    <table>
    <?php
     
     
    if (isset($_POST['atq'])) {
     echo 'Vous attaquez a '.$data_competences['attaque_magi'].'</br>';}
     
     
    ?>
     
    <?php	
    	$sql = "SELECT * FROM competences WHERE classe = '".$data_accounts['classe']."' ";
    	$result_compet = mysql_query($sql);
    	while ($data_competences = mysql_fetch_array($result_compet)) { ?>
     
    <form id='frm' name='frm' method='post' action='combat.php'>
        <input type='submit' name='atq' value='<?php echo $data_competences['nom']; ?>'/>
     
    </form>
    <?php } ?>
     
    		</table>
    Merci,

  2. #2
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if (isset($_POST['atq'])) {
     echo 'Vous attaquez a '.$data_competences['attaque_magi'].'</br>';}
    Donc tu affiches le résultat de la requête sql à ce moment mais tu fais la requête sql qui renseigne ce texte après?

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 18
    Par défaut
    Ouais, mais si je met le résultats dans le while, sa m'affiche quand même le résultats sans appuyer sur le bouton.
    C'est pour ça que je l'ait mit la.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Et donc le résultat que tu obtiens est tout à fait normal

    Peux-tu nous dire ce que tu cherches à afficher ? Ca nous aidera à trouver une solution. Surtout qu'on ne sait pas comment est créé $data_accounts['classe'] que tu utilises.

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 18
    Par défaut
    En gros quand c'est écrit comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php	
    	$sql = "SELECT * FROM competences WHERE classe = '".$data_accounts['classe']."' ";
    	$result_compet = mysql_query($sql);
    	while ($data_competences = mysql_fetch_array($result_compet)) { ?>
     
    <form id='frm' name='frm' method='post' action='combat.php'>
        <input type='submit' name='atq' value='<?php echo $data_competences['nom']; ?>'/>
     
    </form>
    <?php
    if (isset($_POST['atq'])) {
     echo 'Vous attaquez a '.$data_competences['attaque_magi'].'</br>';}
     } ?>
    Ca marche, sauf que sa écrit directement le résultats de la requetes, à coté du boutton. Et moi ce que je veut c'est quand on clique sur le boutton, sa met le résultats.

    Pour $data_accoutns[classe] c'est la conditions qui dit la classe de l'attaque doit etre pareil que la classe du compte.
    Voila

  6. #6
    Invité
    Invité(e)
    Par défaut
    Le problème c'est celui-ci:

    - tu utilises une requête sql pour créer des boutons
    - tu utilises ses boutons pour envoyer en post des info à la page courante
    - tu utilises le résultat de la requête qui crée les boutons pour connaitre l'action qui a été envoyé via la méthode post ...

    Mais comme php et mysql ne sont pas devins cela ne fonctionne pas.

    Il faut que ton '$data_competences['attaque_magi']' soit envoyé via la méthode post lorsque tu appuies sur le bouton.

    De plus ta page actuelle va créer plusieurs fois (s'il y a plusieurs résultat dans ta requête sql) le formulaire suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <form id='frm' name='frm' method='post' action='combat.php'>
        <input type='submit' name='atq' value='<?php echo $data_competences['nom']; ?>'/>
    </form>
    Comment comptes-tu savoir quel bouton a été appuyé?

    Je te conseille de revoir ta page php et d'en faire une première version fonctionne sans la requêtes php. Ca te servira de test et tu pourras ensuite la comparer avec celle contenant la requête sql.

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

Discussions similaires

  1. utilisation du while
    Par ghostbrain dans le forum Débuter
    Réponses: 1
    Dernier message: 02/12/2011, 17h05
  2. quand est ce qu'on utilise (do..while)
    Par nitch01 dans le forum Débuter
    Réponses: 2
    Dernier message: 22/12/2009, 21h18
  3. Utilisation de "do while"
    Par romain1 dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 23/06/2008, 00h26
  4. Utilisation de toutes les instances d'une classe dans un while
    Par canaboss dans le forum Débuter avec Java
    Réponses: 12
    Dernier message: 28/04/2008, 15h28
  5. Utiliser une boucle while
    Par link39001 dans le forum ASP
    Réponses: 11
    Dernier message: 09/05/2006, 14h50

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