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

Langage PHP Discussion :

[Tableaux] Probleme de copie de donnees entre 2 tables


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut [Tableaux] Probleme de copie de donnees entre 2 tables
    bonjour, grand debutant en PHP, j'essaie deseperement de copier des donnees entre 2 tables afin de les archiver.
    au depart, j'affiche les ID et j'ai un formulaire pour demander l'id a deplacer...... j'espere etre assez clair, mais meme ca, c n'est pas simple....lol
    j'ai déja passé pas mal de temps a chercher comment faire, mais toujours pas de resultats, merci de m'aider................

    voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <form action="copieTable.php" method="post">
    <input type="text" name="copie" size="5"/> <input type="submit" value="enregistrement à deplacer" />
    </form>
     
    <?php
    if (isset($_POST['copie'])) 
    {
    $copie = $_POST['copie'];
     
    mysql_query(" INSERT INTO xinfo VALUES ('id', 'nom', 'prenom','adresse','ddn','teldo','telpome','telpope','telbume','telbupe','comm')");
    SELECT ('id', 'nom', 'prenom','adresse','ddn','teldo','telpome','telpope','telbume','telbupe','comm')
     FROM "info" WHERE id=" . $_POST['copie']);"
    }
    ?>

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 364
    Points : 253
    Points
    253
    Par défaut
    Ou se trouve le problème ???

    Déjà revoit ta requête d'insertion :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query(" INSERT INTO table1 SELECT chp1,chp2 from table2 where condition")

  3. #3
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Qu'est ce qui fonctionne? Qu'est ce qui ne fonctionne pas? Quel message d'erreur as-tu? Quel résultat obtiens-tu? Lequel veux-tu obtenir?

    Bref, autant de questions qui nous permettront mieux cerner ton problème et de t'aider à le résoudre

  4. #4
    Nouveau membre du Club
    Inscrit en
    Décembre 2005
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 27
    Points : 30
    Points
    30
    Par défaut
    Le plus facile est de stocker ta requête dans une variable que tu affiches dans ton navigateur. Ensuite, un copier et un coller dans phpMyAdmin pour voir le résultat ou le(s) message(s) d'erreur...

  5. #5
    Candidat au Club
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut erreur et resultat voulu
    j'ai un message d'erreur " parse error ".
    j'ai un formuliare dans ma page ou je renseigne l'ID.
    ce que je voudrait comme resultat, c'est copier un enregistrement de ma table INFO (par son ID)
    dans la table XINFO et ensuite faire un DELETE du meme enregistrement dans la table info (couper/coller)...malheureusement le ctrlX ne fonctionne pas....

  6. #6
    Membre actif
    Homme Profil pro
    Responsable d'une MOE bancaire
    Inscrit en
    Juillet 2003
    Messages
    261
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Responsable d'une MOE bancaire

    Informations forums :
    Inscription : Juillet 2003
    Messages : 261
    Points : 226
    Points
    226
    Par défaut
    une requete genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    insert into XXX select YYY from ZZZ
    fonctionne bien si le nombre d'enregistrement retourné par select n'est pas énorme. Sinon t'auras un probleme de memoire car le resultat du select est stocké dans la memoire en attendant les inserer dans la nouvelle table

    Solution: Utilise

  7. #7
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 364
    Points : 253
    Points
    253
    Par défaut
    j'ai un message d'erreur " parse error ".
    Sur quel ligne de ton code ???

    As tu fais un echo de ta requête select pour voir si elle te renvoie bien quelque chose.
    Peut être que ton id dans ta base de données est en format texte, dans ce cas, il faudrait rajouter des quotes

  8. #8
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    Pour ton parse error, essaie ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    mysql_query(" INSERT INTO xinfo VALUES ('id', 'nom', 'prenom','adresse','ddn','teldo','telpome','telpope','telbume','telbupe','comm')");
    SELECT ('id', 'nom', 'prenom','adresse','ddn','teldo','telpome','telpope','telbume','telbupe','comm')
     FROM info WHERE id='" . $_POST["copie"]');

  9. #9
    Candidat au Club
    Inscrit en
    Octobre 2006
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Ca y est...merci beaucoup
    ca y est j'ai resolu mon probleme....


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <form action="copieTable.php" method="post">
    <input type="text" name="copie" size="5"/> <input type="submit" value="enregistrement à deplacer" />
    </form>
     
    <?php
    if (isset($_POST['copie'])) 
    {
    $copie = $_POST['copie'];
     
    mysql_query(" INSERT INTO xinfo SELECT id,nom,prenom,adresse,ddn,teldo,telpome,telpope,telbume,telbupe,comm from info where id=" . $_POST['copie']);
    }
    ?>
    le probleme etait dans ma requete.

    encore merci, comme on est bien recu, je reviendrai...

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

Discussions similaires

  1. Copie de données entre deux tables distinctes
    Par newty dans le forum Requêtes
    Réponses: 7
    Dernier message: 30/07/2010, 16h25
  2. Copie de données entre deux tables
    Par Guite dans le forum VBA Access
    Réponses: 1
    Dernier message: 30/06/2008, 11h08
  3. Copie de données d'une table à l'autre
    Par ganga dans le forum Langage SQL
    Réponses: 1
    Dernier message: 23/11/2006, 08h34
  4. [MySQL] Probleme de liaison de champs entre deux tables
    Par ept35 dans le forum PHP & Base de données
    Réponses: 23
    Dernier message: 16/12/2005, 16h34
  5. Réponses: 12
    Dernier message: 04/10/2004, 19h18

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