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 :

bloque un id [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 306
    Points : 76
    Points
    76
    Par défaut bloque un id
    bonjour,

    J'ai besoin de lumières pour un petit problème.
    1) j'ai une table x avec un id auto incrémenter
    2) J'ai un écran d'encodage de données et quand l'utilisateur clique ajouter, via xajax j'affiche le dernier numéro auto incrément + 1.
    3) Avant l'insert je récupère une dernière fois le dernier numéro pour être sûr que personne n'a ajouté entre temps.

    Le problème en fait est que si 2 utilisateurs clique ajouter en même temps ou tant que l'autre n'a pas encore sauvé, ils voient tous les 2 le même numéro.
    J'aimerai en fait que quand l'utilisateur a cliqué sur ajouter, le numéro soit bloqué et si quelqu'un clique à son tour il verra le numéro suivant.

    Si quelqu'un a une solution autre que au moment où il clique ajouter, déjà faire l'insert et alors quand il clique sur sauvegarder faire un update


    Merci de vos réponse

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    pour faire manuellement incrémentation alors qu'elle est automatique ? ça n'as pas de sens.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 306
    Points : 76
    Points
    76
    Par défaut
    Non l insert se fait en auto mais le client a besoin de savoir le numero que son enregistrement aura apres la sauvegarde. C est pour ca que j ai besoin de bloquer le numero pcq si 2 personnes font l ajout en meme temps. C est le premier qui sauve que son enregistrement aura vraiment le numero afficher tandis que l autre aura le numero affiche + 1.

    J espere avoir ete plus clair

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par bender86 Voir le message
    Non l insert se fait en auto mais le client a besoin de savoir le numero que son enregistrement aura apres la sauvegarde. C est pour ca que j ai besoin de bloquer le numero pcq si 2 personnes font l ajout en meme temps. C est le premier qui sauve que son enregistrement aura vraiment le numero afficher tandis que l autre aura le numero affiche + 1.

    J espere avoir ete plus clair
    tu lui envoie le numéro après avoir fait la sauvegarde

  5. #5
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Je ne comprends pas. Lors des inserts, tu ne réccupère pas le dernier id inséré avec mysql_insert_id ?

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par Benjamin Delespierre Voir le message
    Je ne comprends pas. Lors des inserts, tu ne réccupère pas le dernier id inséré avec mysql_insert_id ?
    ça ne changera pas le problème.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 306
    Points : 76
    Points
    76
    Par défaut
    J affiche deja le numero avant l insert. L insert se fait qd l utilisateur a rempli tous ses champs et clique sauvegarde.
    Je voudrais donc bloque le numero que recoit le premier utilisateur a recu apres avoir clique sur suivant et si un autre utilisateur clique ajouter et que le premier n a pas encore sauve. Il recoive qd meme le numero suivant que le premier utilisateur aurait "reserve"

    Merci

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    tu fais un insère vide ensuite tu feras un update avec l'id, mais c'est tordu, je te conseil plutôt de donnée l'id après

  9. #9
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2007
    Messages
    748
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 748
    Points : 1 022
    Points
    1 022
    Par défaut
    exemple :
    une personne veux envoyer un message , et toi compter le nombre de message posté.

    en fait, tu peu mettre une colonne dans la bdd avec les états de transaction : bddmessage ( id , idClient, text , etatMessage );

    1)
    tu peu remplir une nouvelle ligne à l'affichage de la page
    INSERT ( 'idAUTO' ,'client200' , '' , 'start' )
    mais c pas obligtoire, c juste pour montrer qu'une ligne peu avoir plusieurs état

    2)
    puis une fois le texte envoyé, tu change l'état de la ligne en 'end'

    3)
    le id sera toujours auto incrémenté et tu peu compter le nombre de ligne ou etat = end .


    voilou
    Conception / Dev

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    306
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2008
    Messages : 306
    Points : 76
    Points
    76
    Par défaut
    Oui j esperais qu il y aie une autre solution qu un insert vide
    Je vais surement donner l id a la fin alors.

    Merci et si jamais il existe une autre solution. Je suis a l ecoute

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

Discussions similaires

  1. Requête SQL qui me bloque
    Par David Guillouet dans le forum Langage SQL
    Réponses: 5
    Dernier message: 27/04/2004, 14h52
  2. Bloque la date et l'heure sous Win XP ??
    Par Djedjeridoo dans le forum Windows
    Réponses: 2
    Dernier message: 05/04/2004, 12h11
  3. Réponses: 2
    Dernier message: 23/03/2004, 12h23
  4. Réponses: 1
    Dernier message: 23/02/2004, 12h58
  5. bloqué en mode Release
    Par matsch77 dans le forum MFC
    Réponses: 3
    Dernier message: 07/01/2004, 17h17

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