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

SQL Procédural MySQL Discussion :

insert de la meme variable mais avec nom différents


Sujet :

SQL Procédural MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Par défaut insert de la meme variable mais avec nom différents
    Bonjour, le forum.

    Comme a mon habitude, je vous sollicite pour un truc trés compliqué.

    Je souhaite faire un tableau sportif PHP/SQL.

    Le probleme vient du fait que je ne parvient pas a inserer dans la BDD les infos contenues dans les variables, le pb est d'identifier les variables dans mon insert :

    Voici mon code :


    fichier b.php
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
     
    // je récupére dans l url la variable de la journée :
    $j=@$_GET['j'];
     
    // tableau comportant la journée, l equipe Domicile MD, le score domicile RD, l equipe exterieur ME et son resultat RE. 
    echo "<table border='0' cellpadding='0' cellspacing='0' width='300'>
      <tr>
        <td width='100%'>
          <form method='POST' action='valide-b.php'>
            <table border='0' cellpadding='0' cellspacing='0' width='300'>
              <tr>
                <td width='25%'>Journée : 
      	  <select onchange='document.location=(this.options[this.selectedIndex].value)' name='J'>
                  <option value='b.php?j=$j' selected>$j</option>
                  <option value='b.php?j=1'>1</option>
                  //etc...
                  </select>
    	    </td>
                <td width='14%'></td>
                <td width='5%'></td>
                <td width='12%'></td>
                <td width='44%'></td>
              </tr>
              <tr>
                <td width='25%'></td>
                <td width='31%' colspan='3' align='center'><b><font size='4' face='Arial'>Score</font></b></td>
                <td width='44%'></td>
              </tr>";
     
     
    // je liste les matchs de la journée selectionnée :
     
    $res=mysql_query("SELECT * FROM L1R where J='$j'");
    while($list = mysql_fetch_array($res, MYSQL_ASSOC))
    { 
    $rd = 'RD' + $list['MD'];
    $re = 'RE' + $list['ME'];
    echo 'RD : $rd<br>RE : $re<br>';
    echo '<tr>
          <td width="25%">
     
    <select size="1" name="MD'.$list['MD'].'">
    <option value="'.$list['MD'].'" selected>'.$list['MD'].'</option>';
     
    // liste des equipes qui recoivent
    $reseq=mysql_query("SELECT * FROM L1 order by Pts ASC");
    while($listeq = mysql_fetch_array($reseq, MYSQL_ASSOC))
    { 
    $md = $list['MD'];
    $me = $list['ME'];
    echo '<option value="'.$listeq['EQ'].'">'.$listeq['EQ'].'</option>';
    }  
    echo '</select>
     
    </td>';
     
    // resultat des match avec identification de chaque resultat dont une partie du nom est composé du nom de l'equipe pour l'update.
     
    echo '<td width="14%"><input type="text" name="RD'.$list['MD'].'" size="2" value="'.$list['RD'].'"></td>
    <td width="5%">-</td>
    <td width="12%"><input type="text" name="RE'.$list['ME'].'" size="2" value="'.$list['RE'].'"></td>
     
    <td width="25%">
     
    <select size="1" name="ME'.$list['ME'].'">
    <option value="'.$list['ME'].'" selected>'.$list['ME'].'</option>';
     
    // liste des equipes reçues
    $reseq=mysql_query("SELECT * FROM L1 order by Pts ASC");
    while($listeq = mysql_fetch_array($reseq, MYSQL_ASSOC))
    { 
    echo '<option value="'.$listeq['EQ'].'">'.$listeq['EQ'].'</option>';
    }  
    echo '</select</td>
          </tr>';
    }
    echo "</table><input name='valider' type='submit' value='VALIDER' style='font-size: 8 pt'>
          </form>
        </td>
      </tr>
    </table>
    ";
    ?>
    fichier valide-b.php qui reçoit les données

    Soit rien ne foncitonne, soit il enregistre le dernier match
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    // c'est ici que se pose mon PB, car il n'identifie que les variables du dernier match. C'est comme si je devais faire une boucle dans l'update.
    $modif = mysql_query("UPDATE L1R SET RD='$rd', RE='$re' WHERE MD='$md' and ME='$me' and J='$j'");
    ?>
    Voici l'url du fichier. http://www.test-internet.com/b.php

    Merci pour votre aide et bonne journée

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Par défaut
    ouaou, j'aurai jamais pensé que mon PB était si compliqué.....

  3. #3
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 058
    Par défaut
    Citation Envoyé par kaolivier
    ouaou, j'aurai jamais pensé que mon PB était si compliqué.....
    Bonjour,

    Pas étonnant que tu n'aies pas trop de réponses, vu que tu n'es pas sur le bon forum pour ça . C'est un problème de PHP que tu rencontres, MySQL n'a rien à y voir (n'importe quel SGBD aurait le même soucis) .

    Pour cause, tu essaies de modifier plusieurs lignes avec deux variables $rd et $re qui se font écraser au fur et à mesure que ta boucle de parcours des matchs s'effectue (par la fonction mysql_fetch_array).
    Au bilan, ces deux variables ne contiennent plus que les résultats de la dernière ligne, comportement que tu observes très justement, et qui est normal...
    Pour t'en sortir, il faut transformer $rd et $re en tableaux, avec une ligne par match, que tu passes en paramètres à ton update (et là, t'es bon pour faire une boucle pour mettre à jour chaque ligne...).

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Par défaut
    un petit exemple peut etre ?

  5. #5
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 058
    Par défaut
    Ben là, comme ça, j'en n'ai pas sous la main...
    Ca fait une paye que j'ai plus fait de PHP...
    Tu as 2 solutions :
    1/ tu fais de tes variables $rd et $re des tableaux que tu passes en paramètre (en post, parce que en get il faut serialiser et c'est plus compliqué) au script qui traitera les résultats.
    2/ tu ajoutes à chaque ligne un _numLigne pour $rd et $re (ex : match1 => $rd_1 et $re_1, match2 => $rd_2 et $re_2...) et comme ça, dans le script de traitement des résultats, tu retrouves tous les scores de tous les matchs.

    Je suis sûr que sur le forum PHP, tu dois trouver des exemples ou des pros de la question...

    Bon courage,
    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Par défaut
    Merci, bcp, je vais tenter ça et mettre un post sur le forum php en meme temps.

    Trés bonne journée

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

Discussions similaires

  1. [AC-2010] Affichage dossier avec noms différents
    Par jmp-28 dans le forum Access
    Réponses: 0
    Dernier message: 18/03/2014, 06h23
  2. Réponses: 22
    Dernier message: 07/09/2013, 18h10
  3. [MySQL-5.5] Meme configuration mais perf totalement différentes
    Par quincyj dans le forum Administration
    Réponses: 0
    Dernier message: 30/04/2013, 10h38
  4. [Débutant] Créer plusieurs fois la meme fenêtre mais avec des infos différentes ?
    Par H3xor dans le forum C++Builder
    Réponses: 7
    Dernier message: 04/02/2011, 17h47
  5. [WSS 2007] Restauration sur un serveur avec Nom différent
    Par wil4linux dans le forum SharePoint
    Réponses: 9
    Dernier message: 10/07/2007, 14h07

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