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 :

Insert into + delete from [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 199
    Par défaut Insert into + delete from
    Bonjour,

    petit problème de requête, je souhaite archiver un projet dans une table archive et ensuite le supprimer de la table projet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $insertArchiver = $bdd->prepare("INSERT INTO `bdd`.`archive` (`IDARCHIVE`, `IDPROJET`, `LIBELLE`, `URLSITE`, `DATEARCHIVE`, `DATEDEBUT`, `DATEFIN`, `BUDGET`, `ACTIVITE`, `TEMPSPASSE`)
        VALUES (NULL, '$idProjet', '$libelle', '$urlSite', NOW(), '$dateDebut', '$dateFin', '$budget', '$activite', '$tempsPasse');");
    $insertArchiver->execute();
    var_dump($insertArchiver);
     
    $deleteProjet = $bdd->prepare("DELETE FROM  `bdd`.`projet` WHERE  `projet`.`IDPROJET` = '$idProjet';");
    $deleteProjet->execute();
    var_dump($deleteProjet);
    Le projet est bien archivé mais la requête delete ne fonctionne pas, trouvez-vous mon problème ??

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2007
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 194
    Par défaut
    Bonjour,

    As-tu un message d'erreur sur ton delete ?

  3. #3
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    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
    Par défaut
    Comme ça je peux pas te dire d'ou vient ton erreur, pousse le reporting d'erreur pour voir ce que réponds le serveur MySQL.

    Au passage, quand il s'agit d'archiver des entrées, si la table d'archive à le même format que la table d'origine (ce qui est généralement le cas) on peut utiliser cette syntaxe d'insert:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $result = $bdd->exec('INSERT INTO projects_archive SELECT * FROM projects WHERE id=1');

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 199
    Par défaut
    Voici ce que me donne le var_dump, sinon aucune erreur non :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    object(PDOStatement)[7]
      public 'queryString' => string 'DELETE FROM  `bdd`.`projet` WHERE  `projet`.`IDPROJET` = '8';' (length=66)
    Il prend bien la bonne valeur de IDPROJET

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 199
    Par défaut
    Sinon, non la table archive a un champ de plus (dateArchive) ainsi que la clé étrangère la reliant au projet.

    Merci

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2007
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 194
    Par défaut
    Juste au cas ou, essaye ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $deleteProjet = $bdd->prepare("DELETE FROM  `bdd`.`projet` WHERE  `projet`.`IDPROJET` = \"$idProjet\";");

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2012
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 199
    Par défaut
    Change rien non plus, merci quand même

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/07/2012, 11h32
  2. insert into table from another table
    Par ALTHON dans le forum Développement
    Réponses: 1
    Dernier message: 08/06/2012, 08h51
  3. [AC-2003] souci utilisation de INSERT INTO- SELECT- FROM- WHERE
    Par eugene_françois dans le forum Modélisation
    Réponses: 1
    Dernier message: 16/04/2010, 16h14
  4. insert into from select ?
    Par axel584 dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 25/01/2005, 18h10
  5. Incrémenter champ : insert into . select max(.) + 1 from .
    Par ludo.guy dans le forum Langage SQL
    Réponses: 10
    Dernier message: 25/11/2004, 14h39

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