Votre question

probleme pour recuperer checked pour radio sous php

Tags :
  • Pdf
  • Programmation
Dernière réponse : dans Programmation
25 Octobre 2008 15:44:26

bonjour a tous,

je vais vous expliquer mon probleme:

j'ai des bouton radio au nombres de 4: Aucune, Lien internet,lien pdf, lien internet et pdf.

$db['publi'] correspond a la value du bouton ,je fais un test pour savoir a quel bouton il correspond, et normalement il checked la value correspondante.

et a chaque fois j'ai le message suivant qui s'affiche:

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in c:\program files\easyphp1-8\www\publi\detail.php on line 267

et voici le code( entre <? ?>) qui pose probleme:



echo "<input type=\"radio\" class=\"graph\" if ($db['publi']==0) { checked;}name=\"publi\" value=\"0\" > Aucune\n";
echo "<br><input type=\"radio\" class=\"graph\" if ($db['publi']==1) { checked;} name=\"publi\" value=\"1\" > Lien internet\n";
echo "<br><input type=\"radio\" class=\"graph\" if ($db['publi']==2) { checked;}name=\"publi\" value=\"2\" > Lien pdf\n";
echo "<br><input type=\"radio\" class=\"graph\" if ($db['publi']==3) { checked;} name=\"publi\" value=\"3\" > Lien internet et pdf\n";

Car je ne vois pas ou se situe l'erreur

Merci de votre aide.

Autres pages sur : probleme recuperer checked radio php

25 Octobre 2008 23:51:58

bonsoir,

j'ai modifier mon code en :

<?
if ($db['publi']==3) {
$check3="Checked";
} elseif ($db['publi']==2) {
$check2="Checked";
} elseif ($db['publi']==1) {
$check1="Checked";
} else {
$check0="Checked";
}

echo $db['publi'];



line 282 echo "<input type=\"radio\" class=\"graph\" name=\"publi\" value=\"0\"$check0 >\n";
line 283 echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"1\"$check1 >\n";
line 284 echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"2\"$check2 >\n";
line 285 echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"3\"$check3 >\n";
?>

mais cette fois ci j'ai un autre type d'erreur:


Notice: Undefined variable: check0 in c:\program files\easyphp1-8\www\mutageme\detail.php on line 282

o Aucune

Notice: Undefined variable: check1 in c:\program files\easyphp1-8\www\mutageme\detail.php on line 283

o Lien internet

o Lien pdf

Notice: Undefined variable: check3 in c:\program files\easyphp1-8\www\mutageme\detail.php on line 285

o Lien internet et pdf

je n'ai pas l'erreur pour le bouton radio checked


et ceci que se soit pour IE que FF.

merci de m'aider


j'ai aussi un autre probleme:

normalement il s'agit d'une fenetre non redimensionnable:

sous firefox elle peut etre redimentionnee et l'actualisation ne se fait pas correctement.
je suis obligé de quitter la fenetre puis de la rouvrir et d'appuyer sur F5 pour que l'actualisation soit correct.

alors que sous IE actualisation correct.

aidez moi s'il vous plait

27 Octobre 2008 19:10:07

Bonsoir,

C'est normal.
par exemple, si la valeur 2 est coché, alors $check2 vaut "Checked". Mais que vaut $check0, $check1 et$check3 ?
C'est le sens du message d'erreur. undefined variable (variable indéfinie)

il faut donner des valeurs à $check0, $check1, $check2 et $check3 pour le cas ou ils ne sont pas coché.

donc :
  1. <?
  2. if ($db['publi']==3) {
  3. $check3="Checked";
  4. }else {
  5. $check3="";
  6. }
  7. ?>


tu peux utliser cette syntaxe, un peut plus lisible :
  1. <?
  2. $check1 = ($db['publi']==1) ? "checked" : "";
  3. $check2 = ($db['publi']==2) ? "checked" : "";
  4. $check3 = ($db['publi']==3) ? "checked" : "";
  5. ?>


A bientôt,

Gillou
Contenus similaires
27 Octobre 2008 22:53:51

merci pour l'aide ,

j'ai mis ce code:

<?
$check0="";
$check1="";
$check2="";
$check3="";

if ($db['publi']==3) {
$check3="Checked";
} elseif ($db['publi']==2) {
$check2="Checked";
} elseif ($db['publi']==1) {
$check1="Checked";
} else {
$check0="Checked";
}

echo $db['publi'];



echo "<input type=\"radio\" class=\"graph\" name=\"publi\" value=\"0\"$check0 > Aucune\n";
echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"1\"$check1 > Lien internet\n";
echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"2\"$check2 > Lien PDF\n";
echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"3\"$check3 > Lien internet et PDF\n";


?>


mais je crois que ton code est beaucoup plus optimisé

Merci

Duocore
27 Octobre 2008 22:53:53

merci pour l'aide ,

j'ai mis ce code:

<?
$check0="";
$check1="";
$check2="";
$check3="";

if ($db['publi']==3) {
$check3="Checked";
} elseif ($db['publi']==2) {
$check2="Checked";
} elseif ($db['publi']==1) {
$check1="Checked";
} else {
$check0="Checked";
}

echo $db['publi'];



echo "<input type=\"radio\" class=\"graph\" name=\"publi\" value=\"0\"$check0 > Aucune\n";
echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"1\"$check1 > Lien internet\n";
echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"2\"$check2 > Lien PDF\n";
echo "<br><input type=\"radio\" class=\"graph\" name=\"publi\" value=\"3\"$check3 > Lien internet et PDF\n";


?>


mais je crois que ton code est beaucoup plus optimisé

Merci

Duocore
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS