Recupérer 2 tables et copier vers 1 troisième [Résolu/Fermé]

Signaler
-
Messages postés
212
Date d'inscription
lundi 31 janvier 2011
Statut
Membre
Dernière intervention
14 mai 2014
-
Bonjour,

Je n'arrive pas à trouver la syntaxe pour copier 2 tables (adherent et clients) vers une troisième (test)

ex :
$query = "INSERT INTO test SELECT adherent.login, adherent.password, clients.login, clients.password FROM adherent, clients WHERE adherent.num_adh = clients.num_adh";

Il y a un bug !!!

Merci pour l'info,

Bien cordialement,

2 réponses

Messages postés
212
Date d'inscription
lundi 31 janvier 2011
Statut
Membre
Dernière intervention
14 mai 2014
13
INSERT INTO test (adLogin, adPass, clLogin, clPass) VALUES (SELECT adherent.login, adherent.password, clients.login, clients.password FROM adherent, clients WHERE adherent.num_adh = clients.num_adh);
Je suppose que ad.login = adherent.login et cl.login=clients.login, etc.
Ta version copier coller dans phpMyadmin, j'ai toujours un problème.

Merci pour ton intervention
Bien cordialement,
Bonjour,
Toujours pas de "résultat". Pour ma part, ce que j'ai developpé ci-dessous me permet de visualiser les champs des deux tables sauf que je n'arrive pas à les insérrer dans une troisième table ?
**************************************************************************************
$query = "DROP TABLE IF EXISTS test";

$resul = mysql_query($query)
or die ("Requete '$query' invalide");

//Créer la table test
$query = "CREATE TABLE test (
num_adh int(5) unsigned NOT NULL auto_increment,
login varchar(20) NOT NULL default '*',
password varchar(20) NOT NULL default '*',
PRIMARY KEY (num_adh)
) TYPE=MyISAM";

$result = mysql_query($query)
or die ("Requete '$query' invalide");

//cette fonction permet de récupérer les champs : num_adh, login et password dans les tables : adherent et clients
$query = "SELECT adherent.num_adh, adherent.login, adherent.password, clients.num_adh, clients.login, clients.password
FROM adherent, clients
WHERE adherent.num_adh = clients.num_adh";

$result = mysql_query($query)
or die ("Requete '$query' invalide");
Re,
Je crois que j'ai trouvé la solution !
Je crée 2 tables : test & test1
********************************************************
//insertion des champs de la table clients dans test
$query = "INSERT INTO test SELECT num_adh, login, password FROM clients";
$result = mysql_query($query)
or die("Requête '$query' invalide : ".mysql_error());

//insertion des champs de la table adherent dans test1
$query = "INSERT INTO test1 SELECT num_adh, login, password FROM adherent";
$result = mysql_query($query)
or die("Requête '$query' invalide : ".mysql_error());

// On cherche les tables test & test1 et l'on recupère les champs login & password
$query = "SELECT test.num_adh, test.login, test.password, test1.num_adh, test1.login, test1.password
FROM test, test1
WHERE test.login='$login' AND test.password='$password'
OR test1.login='$login' AND test1.password='$password'";
$result = mysql_query($query)
or die ("Requete '$query' invalide");

// S'il existe
if (mysql_num_rows($result) != 0) {

// On met le cookie
setCookie("cookieLogin", $login);
***************************************************************
Ouf...
@+
Messages postés
212
Date d'inscription
lundi 31 janvier 2011
Statut
Membre
Dernière intervention
14 mai 2014
13
Donc c'est résolu ??
Messages postés
212
Date d'inscription
lundi 31 janvier 2011
Statut
Membre
Dernière intervention
14 mai 2014
13
essaye une deuxième fois avec cela :
Select adherent.login, adherent.password, clients.login, clients.password INTO adLogin1, adPass1, clLogin1, clPass1 FROM adherent, clients WHERE adherent.num_adh = clients.num_adh;
INSERT INTO test (adLogin, adPass, clLogin, clPass) VALUES (adLogin1, adPass1, clLogin1, clPass1);