Requete qui marche a moitié

Résolu
casper77610 Messages postés 28 Date d'inscription dimanche 27 mars 2011 Statut Membre Dernière intervention 28 octobre 2012 - 22 avril 2011 à 21:36
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 - 23 avril 2011 à 11:06
Bonjours à tous,

Voici mon soucis :

Dans un tableau html je recupere les données d'une table SQL.
A partir de ce tableau je recopie les lignes choisies par checkbox vers une autre table SQL.

Le soucis c'est que cela me recopie que l'ID et non le reste.

Voici mes codes:

Choix.php
<?php
$db = mysql_connect('localhost', 'root', '') or die('HOST ?'); 
mysql_select_db('Adherents',$db) or die('DB ?');
 
 $id=$_POST['choix'];
 if(isset($_POST['choix']))
  {
  foreach($_POST['choix'] as $val)
    {
    //affichage des elements du tableau
    $sql = "INSERT INTO sortie (Nom, Prenom, id  )  VALUES ('$Nom','$Prenom', '$val')";
 
               mysql_query($sql) or die('Erreur SQL !'.$sql.'
'.mysql_error());
          echo 'Vos infos on été ajoutées.';
    }
  }
 
 
header ('location: tri.php');
 
?>


Et tri.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>TRI</title>
</head>
 

 
 
 <form method='POST' action='choix.php'>
<?php
$db = mysql_connect('localhost', 'root', '') or die('HOST ?');
mysql_select_db('Adherents',$db) or die('DB ?');

$query='Select * from enfants ' ;

$result = mysql_query( $query )or exit ('Erreur SQL !'.$query.'
'.mysql_error());
echo '----

id,
Nom,
Prenom,
Choix</choix></tr';

while($data = mysql_fetch_array($result))

{

echo ' ----, '.$data['id'].'</td>

'.$data['Nom'].',

'.$data['Prenom'].',

, ';

}

?>
 


 
</form>
 
 
 

</html>


Si vous avez une réponse, je vous en remercie par avance

Alain

1 réponse

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
23 avril 2011 à 11:06
Bonjour
c'est normal puisque tu recuperes que l'id
il faut recuperer toute la ligne liée à cet id

//je fais un while mais c'est pour l'exemple

$d = mysql_query("select * from table1 where id='".$id."'");
while( $ligne = mysql_fetch_array($d)){
$t[] = $ligne;
}


echo '';
print($t);
echo '

';



//j'aurai pu recuperer $ligne mais je te montre le procédé

foreach($t as $k => $v){
echo $k.' - '.$v.'
';
}


tu devrais comprendre la suite

a++
3
Rejoignez-nous