problème avec inser into
Posté : 21 oct. 2016, 12:24
Bonjour à tous,
Voici mon problème :
Je souhaite insérer des enregistrements qui viennent de la table membre dans la table archive jusqu'à là pas de problème, mais j'essai par une boucle d'incrémenter une suite de N° de 27000 à 27500 et d'attribuer un N° par membre.
lorsque j'exécute la requête il insert soit la même personne ou il incrémente dans la table les N° mais pas l'enregistrement avec le nom, prénom...
Enfin je pense que mon prb vient de la boucle for et, ou peut-être du Fetch, si vous pouvez m'aider cela fait 2 jours que je tourne en rond...
Voici mon problème :
Je souhaite insérer des enregistrements qui viennent de la table membre dans la table archive jusqu'à là pas de problème, mais j'essai par une boucle d'incrémenter une suite de N° de 27000 à 27500 et d'attribuer un N° par membre.
lorsque j'exécute la requête il insert soit la même personne ou il incrémente dans la table les N° mais pas l'enregistrement avec le nom, prénom...
Enfin je pense que mon prb vient de la boucle for et, ou peut-être du Fetch, si vous pouvez m'aider cela fait 2 jours que je tourne en rond...
<?php
$jour = $param["jour"];
$mois = $param["mois"];
$annee=date('Y');
$age_supp=$param["age_supp"];
$ladate= ''.$annee.'-'.$mois.'-'.$jour.'';
$tranche1=50;
$_debut = 27000;
$_fin = 27550;
$type ="Noël salariés";
$distrib ="Non"
?>
<?php
$req = $bd->query('SELECT matricule, groupe, nom, prenom , date_entree, TIMESTAMPDIFF(YEAR,`date_entree`, "' .$ladate.'" ) as anc
FROM membre
WHERE groupe="8-actif" and TIMESTAMPDIFF(YEAR,`date_entree`, "' .$ladate.'" ) >='.$age_supp.'
ORDER BY nom ASC, prenom ASC
');
for($i=$_debut; $i<=$_fin; $i++)
{
$donnees = $req->fetch() ;
$req = $bd->prepare('INSERT INTO archive SET
type = :type,
num_carnet= :num_carnet,
montant= :montant,
matricule= :matricule,
nom_parent= :nom_parent,
prenom_parent= :prenom_parent,
age= :age,
annee= :annee,
distrib= :distrib
');
$req->execute(array(
':type'=>$type,
':num_carnet'=>$i,
':montant'=>$tranche1,
':matricule'=>$donnees['matricule'],
':nom_parent'=>strtoupper($donnees['nom']),
':prenom_parent'=>strtoupper($donnees['prenom']),
':age'=>$donnees['anc'],
':annee'=>$annee,
':distrib'=>$distrib)
);
if($i==$_fin){break;}
}
?>