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 :

mysql delete retour de l'id effacé ?


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 88
    Par défaut mysql delete retour de l'id effacé ?
    Bonjour,

    Après maintes recherches, je ne trouve pas ce que je cherche.
    J'aimerai savoir si dans le cas d'un delete, il est possible d'avoir un retour sur les id effacés lorsque non connu.

    exemple de ma requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $del3=" DELETE FROM ".$tblpref2."machin WHERE col2='$ref' AND col3='$truc' AND (col4 < '".$machin."')"; 
    $delresult3 = mysql_query($del3) or die ("Mise à jour impossible L30 fichier.php pour machin");
    Dans ce code j'efface toutes les lignes dont col4 est > $machin. Je souhaiterai avoir en retour de cette requête la valeur de chaque id(auto-incrément) qui a été effacé.

    Merci de votre aide.

  2. #2
    Membre éprouvé
    Inscrit en
    Décembre 2009
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Décembre 2009
    Messages : 80
    Par défaut
    Je doute que ça soit possible.
    Connaître le nombre de lignes affectées, et donc supprimées, est donné par mysql_affected_rows(), si déjà ça peut t'aider.

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 88
    Par défaut
    Non, il me faut le ou les Ids effacés par cette requête car ils sont utilisés dans une autre table. Je dois donc mettre à jour cette autre table en supprimant les lignes qui font références à ces Ids détruits.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 316
    Par défaut
    bonjour,
    pourquoi ne pas faire un select avec les mêmes paramètres?
    pour chaque enregistrement trouvé alors tu récupère l'Id que tu stocke en chaine ou direct en tableau et tu fais un delete de ton enregistrement

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2008
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 88
    Par défaut
    Citation Envoyé par notar Voir le message
    bonjour,
    pourquoi ne pas faire un select avec les mêmes paramètres?
    pour chaque enregistrement trouvé alors tu récupère l'Id que tu stocke en chaine ou direct en tableau et tu fais un delete de ton enregistrement
    Bonjour,

    Parce que la variable est AND (col4 < '".$machin."')" donc j'efface tous les enregistrement dont col4 est < $machin.
    Comment récupérer les ids de tous ces enregistrments ?

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    316
    Détails du profil
    Informations personnelles :
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 316
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $req="select * FROM ".$tblpref2."machin WHERE col2='$ref' AND col3='$truc' AND (col4 < '".$machin."')";
    $res=mysql_query($req) or die (mysql_error());
    while($result=mysql_fetch_array($res)){
    $IdAGarder.=$result[Id]."--";
    $Del="delete FROM ".$tblpref2."machin WHERE Id=$result[Id]";
    $resDel=mysql_query($Del) or die (mysql_error());
    }
    // apres, traitement de $IdAGarder
    ?>

Discussions similaires

  1. [MySQL] Delete doublons ERREUR
    Par mikathieut dans le forum Langage SQL
    Réponses: 10
    Dernier message: 29/09/2008, 16h30
  2. [MySQL] DELETE * FROM
    Par Sharkalone dans le forum Langage SQL
    Réponses: 5
    Dernier message: 13/09/2008, 02h48
  3. Réponses: 1
    Dernier message: 02/01/2008, 13h28
  4. [MySQL] DELETE en cascade..ma requete ne marche pas
    Par debie1108 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 21/10/2006, 16h54

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