[php] Transferer les données d'1 table
lonewolf
-
lonewolf -
lonewolf -
Bonjour,
je cherche a faire un transfert en php d'une table a l'autre en changeant la structure et en vidant la première table au fur et a mesure. Je m'explique, j'ai une table sous cette forme :
id Dateentree Nom Numero Code Quantite Code1 Quantite1 Code2 Quantite2 Magasin
1 2012-01-12 Bid 123 234 12 235 10 243 5 Paris
2 2012-01-13 Mac 345 235 43 234 45 237 6 Lyon
et je voudrais pouvoir transferer dans une table sous cette forme :
id Dateentree Nom Numero Code Quantite Magasin
1 2012-0112 Bid 123 234 12 Paris
2 2012-0112 Bid 123 235 10 Paris
3 2012-0112 Bid 123 243 5 Paris
4 2012-0113 Mac 345 235 43 Lyon
5 2012-0113 Mac 345 234 45 Lyon
6 2012-0113 Mac 345 237 6 Lyon
Et que la première table soit vidé.
Comment faire ? Pouvez vous m'aider svp ?
Merci d'avance pour votre aide
Amicalement
je cherche a faire un transfert en php d'une table a l'autre en changeant la structure et en vidant la première table au fur et a mesure. Je m'explique, j'ai une table sous cette forme :
id Dateentree Nom Numero Code Quantite Code1 Quantite1 Code2 Quantite2 Magasin
1 2012-01-12 Bid 123 234 12 235 10 243 5 Paris
2 2012-01-13 Mac 345 235 43 234 45 237 6 Lyon
et je voudrais pouvoir transferer dans une table sous cette forme :
id Dateentree Nom Numero Code Quantite Magasin
1 2012-0112 Bid 123 234 12 Paris
2 2012-0112 Bid 123 235 10 Paris
3 2012-0112 Bid 123 243 5 Paris
4 2012-0113 Mac 345 235 43 Lyon
5 2012-0113 Mac 345 234 45 Lyon
6 2012-0113 Mac 345 237 6 Lyon
Et que la première table soit vidé.
Comment faire ? Pouvez vous m'aider svp ?
Merci d'avance pour votre aide
Amicalement
A voir également:
- [php] Transferer les données d'1 table
- Fuite données maif - Guide
- Table ascii - Guide
- Table des matières word - Guide
- Transférer message whatsapp - Accueil - WhatsApp
- Supprimer les données de navigation - Guide
5 réponses
La solution adoptée et qui fonctionne :
Merci a tous
<?php
//Connexion à la base.
mysql_connect("localhost","root","")or die("Problème avec la base de données");
mysql_select_db("*****")or die ("pas de connection");
//recup des variables
$reponse = mysql_query("SELECT * FROM commandejarvalide1"); // Requête SQL
if ($reponse)
{
while ($row = mysql_fetch_assoc($reponse))
{
if(!empty($row['Code']) && !empty($row['Quantite']))
mysql_query("INSERT INTO commandejarvalide('id', 'dateentree', 'Nom', 'Numero', 'Code', 'Quantite', 'Magasin') VALUES('', '".$row['dateentree']."','".$row['Nom']."','".$row['Numero']."','".$row['Code']."','".$row['Quantite']."','".$row['Magasin']."')");
if(!empty($row['Code1']) && !empty($row['Quantite1']))
mysql_query("INSERT INTO commandejarvalide('id', 'dateentree', 'Nom', 'Numero', 'Code', 'Quantite', 'Magasin') VALUES('', '".$row['dateentree']."','".$row['Nom']."','".$row['Numero']."','".$row['Code1']."','".$row['Quantite1']."','".$row['Magasin']."')");
if(!empty($row['Code2']) && !empty($row['Quantite2']))
mysql_query("INSERT INTO commandejarvalide('id', 'dateentree', 'Nom', 'Numero', 'Code', 'Quantite', 'Magasin') VALUES('', '".$row['dateentree']."','".$row['Nom']."','".$row['Numero']."','".$row['Code2']."','".$row['Quantite2']."','".$row['Magasin']."')");
}
}
else
{
echo 'Pas de champs!!!';
}
?>
Merci a tous
J'ai essayé cela :
Mais meme si cela ne me renvoi pas d'erreur, rien ne s'inscrit dans ma table.
Ou ais je peché ?
Merci pour votre aide
<?php
$PARAM_hote='localhost'; // le chemin vers le serveur
$PARAM_nom_bd='bidule'; // le Nom de votre base de données
$PARAM_utilisateur='root'; // Nom d'utilisateur pour se connecter
$PARAM_mot_passe=''; // mot de passe de l'utilisateur pour se connecter
$pdo = new PDO('mysql:host='.$PARAM_hote.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
$result = $pdo->query("SELECT * FROM 'commandejarvalide1'");
while($row = $result->fetch()){
if(!empty($row['Code']) && !empty($row['Quantite']))
$pdo->exec("INSERT INTO commandejarvalide(id, dateentree, Nom, Numero, Code, Quantite, Magasin), VALUES(" . $row['id'] . ", " . $row['dateentree'] . "," . $row['Nom'] . ", " . $row['Numero'] . ", " . $row['Code'] . ", " . $row['Quantite'] . ", " . $row['Magasin'] . ")");
if(!empty($row['Code1']) && !empty($row['Quantite1']))
$pdo->exec("INSERT INTO commandejarvalide(id, dateentree, Nom, Numero, Code, Quantite, Magasin), VALUES(" . $row['id'] . ", " . $row['dateentree'] . "," . $row['Nom'] . ", " . $row['Numero'] . ", " . $row['Code1'] . ", " . $row['Quantite1'] . ", " . $row['Magasin'] . ")");
if(!empty($row['Code2']) && !empty($row['Quantite2']))
$pdo->exec("INSERT INTO commandejarvalide(id, dateentree, Nom, Numero, Code, Quantite, Magasin), VALUES(" . $row['id'] . ", " . $row['dateentree'] . "," . $row['Nom'] . ", " . $row['Numero'] . ", " . $row['Code2'] . ", " . $row['Quantite2'] . ", " . $row['Magasin'] . ")");
}
?>
Mais meme si cela ne me renvoi pas d'erreur, rien ne s'inscrit dans ma table.
Ou ais je peché ?
Merci pour votre aide
hum, t'as pas l'impression de parler tout seul ?
le dédoublement de personnalité est grave tu sais ^^'
pour ton problème tu as juste à faire 3 insert par ligne de ta première table (ce que tu as visiblement fait)
et pense aux contraintes de type pour les quotes (mettre des ' pour les string et ne pas en mettre pour les integer)
le dédoublement de personnalité est grave tu sais ^^'
pour ton problème tu as juste à faire 3 insert par ligne de ta première table (ce que tu as visiblement fait)
et pense aux contraintes de type pour les quotes (mettre des ' pour les string et ne pas en mettre pour les integer)
En fait, dans ma premiere table j'ai plusieurs champs code (code, code1, code2) et plusieurs champs quantité (quantite, quantite1, quantite2) et je voudrais pouvoir regrouper les codes et les quantités en conservant le champs nom et le champs numero devant.
En gros, si dans ma premiere table, j'ai :
id Dateentree Nom Numero Code Quantite Code1 Quantite1 Code2 Quantite2 Magasin
1 2012-01-12 Bid 123 234 12 235 10 243 5 Paris
2 2012-01-13 Mac 345 235 43 234 45 237 6 Lyon
Comme tu le vois j'ai deux personnes (Bid et Mac) qui ont passées 3 commandes chacun
Pour Bid, 12 quantités du code 234, 10 quantité du code 235 et 5 quantité du code 243
Et je voudrais que dans la table finale, par exemple pour Bid, j'ai une ligne qui reprend son nom (Bid) son numéro (123) (donc sur trois lignes puisque 3 commandes) avec sur la ligne 1 son premier code (234), sa première quantité (12) et son magasin, sur la ligne 2 la meme chose avec le deuxième code(235), sa deuxième quantité (10), et son magasin, etc...
Merci encore pour ton aide
Amicalement
En gros, si dans ma premiere table, j'ai :
id Dateentree Nom Numero Code Quantite Code1 Quantite1 Code2 Quantite2 Magasin
1 2012-01-12 Bid 123 234 12 235 10 243 5 Paris
2 2012-01-13 Mac 345 235 43 234 45 237 6 Lyon
Comme tu le vois j'ai deux personnes (Bid et Mac) qui ont passées 3 commandes chacun
Pour Bid, 12 quantités du code 234, 10 quantité du code 235 et 5 quantité du code 243
Et je voudrais que dans la table finale, par exemple pour Bid, j'ai une ligne qui reprend son nom (Bid) son numéro (123) (donc sur trois lignes puisque 3 commandes) avec sur la ligne 1 son premier code (234), sa première quantité (12) et son magasin, sur la ligne 2 la meme chose avec le deuxième code(235), sa deuxième quantité (10), et son magasin, etc...
Merci encore pour ton aide
Amicalement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question