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 :

dernier enregistrement et incrementation [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
    Mars 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 57
    Par défaut dernier enregistrement et incrementation
    Bonjour,

    Je souhaite récupérer la valeur maximum du champ 'id',
    puis insérer un nouvel enregistrement avec id +1 (je ne souhaite pas auto-incrémenter id).
    çà ne marche pas... pouvez-vous m'aidez svp ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    mysql_connect("$host","$base","$passe");
    mysql_selectdb("$base");
     
    $select="SELECT id FROM table ORDER BY id DESC LIMIT 1;";
    $result=mysql_fetch_object(mysql_query($select));
    $id=$result->id;
     
    $sql="INSERT INTO table (id, champs) VALUES ('$id', '$champs')";
    mysql_query($sql, @mysql_connect("$host","$base","$passe"));
    exit;

  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
    Hum il est ou ton +1 ?

    Au passage, tu pourrais utiliser max().
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 57
    Par défaut
    - oups : $id=$id++; (si je ne me trompe pas...)

    - utiliser max() pourquoi pas, mais j'ai essayé dans tous les sens je n'y arrive pas...

  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
    Au passage encore, tu abuses des guillemets
    et ton mysql_connect, dans le mysql_query ce n'est pas joli joli.

    Ca devrait marcher comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    mysql_connect($host,$base,$passe);
    mysql_selectdb("$base");
     
    $select="SELECT max(id) as id FROM table";
    $result=mysql_query($select);
    $row = mysql_fetch_array($result);
    $id=$row['id']++
     
    $sql="INSERT INTO table (id, champs) VALUES ($id, '$champs')";
    mysql_query($sql);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 57
    Par défaut
    et non le nouvel enregistrement n'a pas été inséré...

    [$id=$row['id']++;]

  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
    Par défaut
    As-tu regardé l'erreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query($sql) or die($sql . '<br/>' . mysql_error());
    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. [debutant] selection des 6 derniers enregistrements
    Par LoLoSS dans le forum Langage SQL
    Réponses: 4
    Dernier message: 09/07/2004, 15h27
  2. Recupération du ID du dernier enregistrement
    Par mustang-gx dans le forum Bases de données
    Réponses: 2
    Dernier message: 13/03/2004, 10h04
  3. Récupérer dernier enregistrement d'une table?
    Par Invité dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 19/01/2004, 11h38
  4. Réponses: 10
    Dernier message: 01/08/2003, 13h45
  5. Trouver le dernier enregistrement d'une table
    Par remi59 dans le forum Requêtes
    Réponses: 4
    Dernier message: 11/03/2003, 14h54

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