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 :

souci update id auto increment [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut souci update id auto increment
    Bonjour,

    j affiche mes tables et champ sous forme de tableau en php j ai a cote de chaque ligne indiquer une option modifier qui me renvoie sur une autre page la ligne selectionné et que je peux modifie r...

    je veux modifier mon id, reference, artiste, album, format quand je fais mon update tout va bien sauf qu il met a jour mon champ id (auto increment) a zero alors qu il etait a 1, 2, 3 ... comment modifier pour le champ id reste le meme ?


    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
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Catalogue</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    </head>
    <body link="#000000" vlink="#444444" alink="#888888">
    <div id="body">
     
    <?php
     
     
     
    include ('config.php');
    include ('connexion.php');
     
    $id = $_GET["id"];
     
     
     
    $sql = "SELECT id, reference, artiste, album, format FROM contenu WHERE id='".$_GET
     
    ['id']."'" ;
     
    $req = mysql_query($sql) or die( mysql_error() ) ;
     
    $total = mysql_num_rows($req);
     
    echo $sql2= "UPDATE contenu SET id='".$_POST['id']."', reference='".$_POST
     
    ['reference']."', artiste='".$_POST['artiste']."',album='".$_POST
     
    ['album']."',format='".$_POST['format']."'
    WHERE id ='".$_GET['id']."'" ;
     
    $req2= mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());
     
     
     
     
     
    {
    echo '<form method ="post" action="modifier.php">';
    echo '<table>'."\n";
    echo '<tr>';
    echo '<td ><b><u>id</u></b></td>';
    echo '<td ><b><u>reference</u></b></td>';
    echo '<td><b><u>artiste</u></b></td>';
    echo '<td><b><u>album</u></b></td>';
    echo '<td><b><u>format</u></b></td>';
    echo '</tr>'."\n";
     
    while($row = mysql_fetch_array($req))
     
    {
    echo '<tr>';
    echo '<td>'.$id.'</td>';
     
    echo '<td><input type="text" name="reference" value="'.$row
     
    ["reference"].'"/></td>';
    echo '<td><input type="text" name="artiste" value="'.$row["artiste"].'"/></td>';
    echo '<td><input type="text" name="album" value="'.$row["album"].'"/></td>';
    echo '<td><input type="text" name="format" value="'.$row["format"].'"/></td>';
    echo '</tr>'."\n";
     
    }
    echo '</table>'."\n";
    echo '<input type="submit" name="btOk" value="Modifier"/>';
    echo '</form>';
     
     
    if (isset($_POST['btOk']))
     
     
    {
     
     
    if($req2)
     
     
    {
    echo ("L'insertion a été correctement effectuée") ;
    echo '<br><a href="http://arm-
    
    info.hd.free.fr/label_modif.php">Retour sur les labels</a></br>';
    }
     
    else
     
    {
    echo("L'insertion à échouée") ;
    }
     
     
    }
    }
     
     
    ?>
     
    </body></html>
     
    <?php
    mysql_close();
    ?>

  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
    Par défaut
    S'il fini a zero avec ton code actuel c'est parce que tu utilises $_POST['id'] alors que visiblement ta valeur c'est $_GET['id']

    Mais le mieux c'est encore de retirer le "SET id=" : tu n'as pas besoin de repreciser tous les champs quand tu UPDATE.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    alors c etait ce que je me suis dit donc j ai enleve le set id et l oh surprise il me met tous les champs vides ...

  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
    Par défaut
    Ou est défini l'id que tu dois mettre a jour ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    j ai remplace le post par get et j ai fait un echo il me supprime egalement tous les champs et voila le resultat de l echo on dirait qu il ne prend pas bine le get ...

    UPDATE contenu SET id='', reference='ttttt', artiste='LUCIEVACARME ',album='Audioscope',format='7' WHERE id =''

  6. #6
    Membre éclairé
    Inscrit en
    Décembre 2008
    Messages
    319
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 319
    Par défaut
    sur mon premier fichier php que voici

    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
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Catalogue</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    </head>
    <body link="#000000" vlink="#FFFFFF" alink="#FFFFFF">
    <div id="body">
    <div id="menu-container"><b>
    <a href="label.php?lettre=[0-9]"  class="active"><span class="text">0-9</span></a> |
    <a href="label.php?lettre=A" target="_self"><span class="text">A</span></a> |
    <a href="label.php?lettre=B" target="_self"><span class="text">B</span></a> |
    <a href="label.php?lettre=C" target="_self"><span class="text">C</span></a> |
    <a href="label.php?lettre=D" target="_self"><span class="text">D</span></a> |
    <a href="label.php?lettre=E" target="_self"><span class="text">E</span></a> |
    <a href="label.php?lettre=F" target="_self"><span class="text">F</span></a> |
    <a href="label.php?lettre=G" target="_self"><span class="text">G</span></a> |
    <a href="label.php?lettre=H" target="_self"><span class="text">H</span></a> |
    <a href="label.php?lettre=I" target="_self"><span class="text">I</span></a> |
    <a href="label.php?lettre=J" target="_self"><span class="text">J</span></a> |
    <a href="label.php?lettre=K" target="_self"><span class="text">K</span></a> |
    <a href="label.php?lettre=L" target="_self"><span class="text">L</span></a> |
    <a href="label.php?lettre=M" target="_self"><span class="text">M</span></a> |
    <a href="label.php?lettre=N" target="_self"><span class="text">N</span></a> |
    <a href="label.php?lettre=O" target="_self"><span class="text">O</span></a> |
    <a href="label.php?lettre=P" target="_self"><span class="text">P</span></a> |
    <a href="label.php?lettre=Q" target="_self"><span class="text">Q</span></a> |
    <a href="label.php?lettre=R" target="_self"><span class="text">R</span></a> |
    <a href="label.php?lettre=S" target="_self"><span class="text">S</span></a> |
    <a href="label.php?lettre=T" target="_self"><span class="text">T</span></a> |
    <a href="label.php?lettre=U" target="_self"><span class="text">U</span></a> |
    <a href="label.php?lettre=V" target="_self"><span class="text">V</span></a> |
    <a href="label.php?lettre=W" target="_self"><span class="text">W</span></a> |
    <a href="label.php?lettre=X" target="_self"><span class="text">X</span></a> |
    <a href="label.php?lettre=Y" target="_self"><span class="text">Y</span></a> |
    <a href="label.php?lettre=Z" target="_self"><span class="text">Z</span></a></b>
    </div>
     
    <?php
     
    include ('config.php');
    include ('connexion.php');
     
    echo '<table>
    
    <tr>
    <th>id</th>
    <th>Label</th>
    <th>Référence</th>
    <th>Artiste</th>
    <th>Album</th>
    <th>Format</th>
    <th>Modifier</th>
    
    
    </tr>';
     
    //  paramètre reçu désignant le critère du nom du label recherché
    $param1 =  mysql_real_escape_string($_GET['lettre']);
     
     
    //
    $sql = "SELECT * FROM label
    INNER JOIN contenu ON contenu.id_label = label.id_label
    Where nom_label REGEXP '^$param1' order by nom_label, reference;
    ";
    $req = mysql_query($sql);
    while ($resultat = mysql_fetch_array($req))
     
     
    {
    echo '<tr>';
     
    echo '<td>'.$resultat['id'].'</td>';
    echo '<td>'.$resultat['nom_label'].'</td>';
    echo '<td>'.$resultat['reference'].'</td>';
    echo '<td>'.$resultat['artiste'].'</td>';
    echo '<td>'.$resultat['album'].'</td>';
    echo '<td>'.$resultat['format'].'</td>';
    echo '<td><a href="modifier.php?id='.$resultat['id'].'">Modifier</a></td>';
     
     
     
     
     
    echo '</tr>';
    }
     
    echo '</table>';
     
    $var = $resultat;
     
    if($var == null){
     
     
        echo "Aucne référence trouvée";
     
     
    }
     
    ?>
     
    </body></html>
     
    <?php
    mysql_close();
    ?>

  7. #7
    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
    Par défaut
    Dans ce que tu viens de me montrer, il y a encore le "SET id="

    Tu devrais relire calmement tes fichiers pour qu'on sache ou on en est.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

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

Discussions similaires

  1. insert into via un select soucis auto increment
    Par maysa dans le forum Requêtes
    Réponses: 6
    Dernier message: 07/03/2011, 20h41
  2. Update de l'id auto incrementé
    Par laclac dans le forum Débuter
    Réponses: 1
    Dernier message: 08/10/2009, 12h10
  3. [MySQL] Update sur auto increment
    Par obito dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/06/2008, 10h16
  4. Nom du champs auto-incrementé
    Par norroy dans le forum Requêtes
    Réponses: 2
    Dernier message: 17/06/2003, 18h30
  5. Pb d'auto-incrément sur une table v7
    Par Nivux dans le forum Paradox
    Réponses: 9
    Dernier message: 26/12/2002, 12h05

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