8798 sujets

Développement web côté serveur, CMS

Bonjour,
et désolé si mon titre n'est pas très clair, je vais tenter de l'être un peu plus.

J'ai dans un formulaire des input type="radio" générés dynamiquement de la manière suivante:
for($i=1; $i <= 6; $i++){
				echo $i.'<label for="photo">Photo '.$i.' :</label><input type="file" name="fichier[]" />
				<input type="radio" name="choix_1" value='.$i.' />';			
				} 


Or mon client souhaite rendre obligatoire un choix (il s'agit de la sélection d'une image par défaut dans un affichage).
Quel serait votre solution, piste, avis?
D'avance merci!
Administrateur
Bonjour,

dans ton code actuel, il n'y a aucun id "photo" mais 6 label avec for="photo".
Mieux vaudrait avoir des for="photo$i" et rajouter les id qui vont bien sur les input correspondants. Et rajouter les 6 label pour l'autre type d'input (il y a 6 input[type="file"] et 6 input[type="radio"] mais seulement 6 label. Or CHAQUE input doit avoir un label ou au pire un title selon WCAG 2.0, pas d'exception à ça Smiley cligne )

Idéalement il faudrait aussi un filedset+legend autour du groupe de boutons radio (tu styles le legend comme tu veux et tu peux virer la magnifique bordure grise ...)

Sinon
if(certaine_condition) $required = 3; // bouton n°3 sera requis
for($i=1; $i <= 6; $i++){
$txt_required = ($required) ? " required=\"required\" : ''; // avec un espace au début de la chaîne
echo "(...)<input$required type=(...)";
// Affiche soit '(...)<input type=(...)' soit '(...)<input required="required" type=(...)'
}

Modifié par Felipe (05 Apr 2012 - 10:55)