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 :

Mise a jour de toute une table


Sujet :

PHP & Base de données

  1. #1
    FoxLeRenard
    Invité(e)
    Par défaut Mise a jour de toute une table
    Bonjour,

    Et désolé de reposter ICI, mais je m'étais trompé de Forum


    ça parait bête, mais je ne connais pas la syntaxe la plus simple pour faire une mise a jour tel que je vais vous l'expliquer :

    1) J'ais une table "matable"
    2) dedans se trouve une valeur ordinaire, je veux dire ni unique ni une clé
    son nom est "Article" qui est un nombre celui que je veux changer
    3) j'ais un array "tranpose" dans chaque rang de cet array corespond le
    nouveau numéro que devrait avoir ma valeur "Article"

    Tel que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $Article=$transpose[$Article]
    Voila , comment feriez vous la boucle de lecture et mise a jour de ma "matable"

    Mille mercis d'avance

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Est-ce que tu as la correspondance id->nouvelle valeur dans ton transpose ?

  3. #3
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Est-ce que tu as la correspondance id->nouvelle valeur dans ton transpose ?
    Merci de ta question, en fait je n'ais que 50 valeurs mais j'ais du les changer, alors c'est simple dans ce que j'ais écris dans ma question,
    voila ce que j'aurais du préciser

    admetons que dans 250 modules il y ait $Article = 10
    alors dans ces 250 modules je vais remplacer la valeur 10 de article
    par celle que j'ais mise dans transpose[10]

    Voila qui j'espéres répond a ta question

    Je réédites mon message car j'ais une précision a apporter,
    je croyais que ça marcherait, mais j'ais une erreur, mais aprés tout
    ça va vous aider a me comprendre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
     $Flag1=mysql_connect($Serveur,$User,$Mdp);
     $Flag2=mysql_select_db($MaBase);
     $result=mysql_query( "UPDATE fomes  SET
     
      MsgFoNum='$LesX[MsgFoNum]'
     
      WHERE MsgIndex>0 and MsgIndex<9999");
      mysql_close();
    HOUPS je réédites une troisiéme fois voici mon ARAY
    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
     
     
    $LesX = array();
     $LesX[1]=1;
     $LesX[2]=201;
     $LesX[3]=202;
     $LesX[4]=205;
     $LesX[5]=301;
     $LesX[6]=304;
     $LesX[7]=501;
     $LesX[8]=306;
     $LesX[9]=101;
     $LesX[10]=502;
     $LesX[11]=504;
     $LesX[12]=506;
     $LesX[13]=503;
     $LesX[14]=102;
     $LesX[15]=204;
     $LesX[16]=303;
     $LesX[17]=305;
     $LesX[18]=203;
     $LesX[19]=302;
     $LesX[20]=307;
     $LesX[21]=505;
     $LesX[22]=401;
     $LesX[23]=402;
     $LesX[24]=403;
     $LesX[25]=1;
     
    /* Donc quand je trouverais dans un enregistrement 14 par exemple
    je le remplacerait par  $LesX[14] donc par 102
    */
    Dernière modification par FoxLeRenard ; 28/01/2009 à 20h54.

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Je te propose ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $sql = "UPDATE fomes  SET MsgFoNum = CASE MsgFoNum "
    foreach ($lesX as $old_value->$new_value) {
    $sql .=  " WHEN $old_value THEN $new_value ";
    }
    $sql .= " END;"
    $result=mysql_query($sql);
    }

  5. #5
    FoxLeRenard
    Invité(e)
    Par défaut
    Merci Sabotage

    D' abord mille mercis a toi

    J'ais fais ce que tu m'as dit et j' y ais changé uniquement mes vrais noms de variables
    J'ais du rajouter un ; derriére la premiére ocurence de ta solution,
    pour le reste il m'affiches sans arret que $new_value est icnonnu ?

    Voici le PHP COMPLET
    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
     
    <?PHP ?>
    <HTML><BODY>
    <?PHP
     
     $LesX = array();
     $LesX[1]=1;
     $LesX[2]=201;
     $LesX[3]=202;
     $LesX[4]=205;
     $LesX[5]=301;
     $LesX[6]=304;
     $LesX[7]=501;
     $LesX[8]=306;
     $LesX[9]=101;
     $LesX[10]=502;
     $LesX[11]=504;
     $LesX[12]=506;
     $LesX[13]=503;
     $LesX[14]=102;
     $LesX[15]=204;
     $LesX[16]=303;
     $LesX[17]=305;
     $LesX[18]=203;
     $LesX[19]=302;
     $LesX[20]=307;
     $LesX[21]=505;
     $LesX[22]=401;
     $LesX[23]=402;
     $LesX[24]=403;
     $Flag1=mysql_connect($Serveur,$User,$Mdp);
     $Flag2=mysql_select_db($MaBase);
     
     
    $sql ="UPDATE fox_messages  SET MsgForumNum = CASE MsgForumNum ";
     foreach ($LesX as $old_value->$new_value)
      {
       $sql .=  " WHEN $old_value THEN $new_value ";
      }
      $sql .= " END;";
      $result=mysql_query($sql);
      mysql_close();
    ?>
    </BODY></HTML>

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    je fatigue
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach ($LesX as $old_value=>$new_value)

  7. #7
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par sabotage Voir le message
    je fatigue
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    foreach ($LesX as $old_value=>$new_value)
    Qui c' est qui a osé dire ça de Sabotage

    Tu veux dire t'es trop génial en plus ça a marché et tout mes datas sont a jour Pffffffff...

    A trés bientôt et encore merci.

Discussions similaires

  1. [AC-2010] Modelisation : mise a jour externe d'une table
    Par Jurassix dans le forum Access
    Réponses: 6
    Dernier message: 13/08/2014, 03h16
  2. Réponses: 4
    Dernier message: 24/09/2013, 13h02
  3. mise a jour automatique d'une table
    Par boboss123 dans le forum jQuery
    Réponses: 5
    Dernier message: 15/12/2010, 13h18
  4. [MySQL] MYSQL Mise a jour toute une table encore
    Par FoxLeRenard dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 02/02/2009, 20h02
  5. Empecher la mise a jour auto d'une table
    Par SnakeCharmer dans le forum IHM
    Réponses: 2
    Dernier message: 03/04/2008, 15h04

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