Bonjour,

Pour les besoins de mon site, je voudrais créer un formulaire avec des radio button de manière dynamique à partir des valeurs d'un champs de ma base de donnée.

J'ai donc le script suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
			Veuillez selectionner l'annonce à supprimer :
		</p>
 
    <form method="post" action="/Simon/controlleur/cont_delete_ocasion>php">
       <p>
         <?php
            for($n=0; $n<count($liste_nom); $n++)
            {
              echo '<input type="radio" name="nom_annonce" value='. settype($liste_nom[$n],"string").'id='.settype($liste_nom[$n],"string").' />' ;
              // echo '<input type="radio" name="nom_annonce" value='.$liste_nom[$n].'id='.$liste_nom[$n].' />' ;
              echo '<br/>'; //formulaire a taille variable
            }
            ?>
            <input type="submit" value="Supprimer">
       </p>
    </form>
où $ liste_nom est fournie par la fonction suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
function get_name()
{
//global $bdd
global $bdd;
 
  $reponse=$bdd->prepare('SELECT :nom_occasion FROM annonces');
  $reponse->execute (array(
    'nom_occasion'=>"nom_occasion"));
 
$noms=$reponse->fetchAll();
return $noms;
 
}
quand j’exécute le script j'obtient une erreur "Notice: Array to string conversion" sur la ligne suivante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
echo '<input type="radio" name="nom_annonce" value='.$liste_nom[$n].'id='.$liste_nom[$n].' />' ;
Je comprend que je crée une erreur car je change un type tableau en string. J'ai lu aussi que je pouvais désactiver les notices mais je ne suis pas fan de cette solution.
J'ai essayé un transtypage avec la ligne suivante mais ça n'a rien changé:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
echo '<input type="radio" name="nom_annonce" value='. settype($liste_nom[$n],"string").'id='.settype($liste_nom[$n],"string").' />' ;
C'est sûrement une bêtise mais je ne vois pas comment je peux convertir mon array en string pour éviter la génération d'une Notice.

Merci d'avance pour votre aide !