Récupérer tous les champs d'un select et les marquer "selected"

WRInaute occasionnel
Bonjour,

J'ai un champ select multiple.
Je coche n ligne.
J'envoie le formulaire.
Je réceptionne le formulaire.
Je réaffiche le même champ select (généré à partir d'une base de donnée).
J'ajoute "selected" dans chaque option ayant été précédemment cochée (pour vérification).
Ca foire.

Voici le coupable :
Code:
//code spoutique
$id_auteur = array_map(function ($val) 
{
 foreach($id_auteur as $id_auteur)
{  
$sql = "
SELECT
nom,
prenom
FROM
auteur
WHERE id=".$id_auteur."

";
$stmt = $dbh->prepare ($sql); /* On prépare la requête */
/** On execute la requete */
$stmt->execute();
$nom=$lettre->nom;
$prenom=$lettre->prenom;
echo' '.$nom.' '.$prenom.''
;}//ferme foreach 
;}, $_POST['id_auteur'])

L'idée, est qu'on va aller chercher les informations correspondantes à chaque id retourné dans le tableau.
Déjà là, ma requête sql est forcément nulle vu que je ne récupère pas le contenu au moyen d'une fonction quelconque (d'habitude, j'utilise toujours des while).
Mais de toute manière, je crois que la logique est douteuse. A vrai dire, j'en suis même certain...

Je gadouille.


Merci d'avance donc, pour vos indices répondants.
 
WRInaute occasionnel
Bon, ne vous cassez pas la tête avec ma question, c'est la fin de la journée, c'est embrouillé...

Si quelqu'un veut bien m'indiquer comment récupérer un et un seul tuple dans la base, au lieu d'utiliser une boucle while comme suit :
Code:
while($tuple= $stmt->fetch(PDO::FETCH_OBJ))  { ;}

Alors je l'en remercie par avance.
 
Discussions similaires
Haut