Page 1 sur 1

Problème de je ne sais pas quoi

Posté : 23 mars 2006, 12:36
par pompomp
Bonjour,

J'ai fait un tableau rempli grâce à une base de donneés avec, à la fin de chaque ligne un bouton radio. Ce tableau me permet de modifier l'enregistrement correspondant à la ligne où le bouton radio a été clqiué.
Voici le code du tableau :

Code : Tout sélectionner

<?php $compteur=0; while($val = mysql_fetch_assoc($result)) { echo ' <TR> <TD><input type="text" name="txtl[]" value="'.$val["Licence_J"].'"></TD> <TD><input type="text" name="txtn[]" value="'.$val["Nom_J"].'"></TD> <TD><input type="text" name="txtp[]" value="'.$val["Prenom_J"].'"></TD> <TD><input type="radio" name="Sel" value="'.$compteur.'"></td> </TR>'; $compteur++; }?>

Le tableau s'affiche nickel. Et après avoir cliqué sur un bouton "submit", je récupère les infos de la ligne choisie par le bouton radio et je modifie l'enregistrement :

Code : Tout sélectionner

<?php $choix = (isset($_POST["Sel"]))?$_POST["Sel"]:null; if (!empty($choix)) { $NumLicence = (isset($_POST['txtl']))?$_POST['txtl']:null; //Requete Update pour modification avec $NumLicence comme condition else {?> <script language="javascript">window.alert('Aucun joueur n a été sélectionné!');</script> <script language="javascript">window.open("FrameRch.html","AffichModifEffectif");</script> <?php } ?>



Cela marche impeccablement pour toutes les lignes sauf pour la première ou j'ai l'alert qui apparait avec le message 'Aucun joueur n a été sélectionné!'.

Si vous voyez d'où peut provenir mon erreur, je vous remercie d'avance pour vos réponses.

Fred

Posté : 23 mars 2006, 12:55
par Ryle
Je me trompe peut être, mais je pense que le problème vient du fait que ta première ligne a pour valeur zéro, chose que le php interprete également comme vide ou faux

Du coup lorsque tu fais le test !empty(), il doit considérer que même si c'est la valeur zéro qu'il contient, cela correspond aussi à chaine vide... C'est malgré tout à confirmer...

la solution dans ce cas serait donc de commencer à numéroter tes input à partir de 1 ($compteur=1), et si nécessaire, de travailler sur l'index ($choix-1) :)

M'enfin si quelqu'un d'autre à mieux, ça m'interesse aussi ;)

Posté : 23 mars 2006, 13:13
par pompomp
ok, je vais voir dans ce sens.
Merci

[résolu]

Posté : 23 mars 2006, 13:17
par pompomp
C'est bon, ça marche. J'avais déjà essayé cette solution mais sans toucher à l'index.
Maintenant, c'est nickel