Autor Zpráva
LukasCZ
Profil
Mám takový problém se se týče checkboxu.

Jedno formulářové pole (ENUM / SET): Oblíbená barva: - modrá, zelená, žlutá, modrá

Přes formulář si zatrhu v checkboxu: ČERVENÁ, ŽLUTÁ

vložení funguje INSERT INTO tabulka SET (color='$cervena,$zelena,$zluta,$modra')

vloží se jen ČERVENÁ A ŽLUTÁ

ale jak teď zobrazím to co je zaškrtnuté třeba v aktualizačním formuláři nebo v přehledu ?

toto mi u checkboxu nefunguje:
<input name='cervena' type='checkbox' value='cervena' <?php echo $color==cervena ? "checked" : ""?> >

takže poradíte mi, jak vypíšu hodnoty z pole ENUM / SET ?
Hugo
Profil
Zkus tohle

<?php echo $color=='cervena' ? "checked" : ""?>

To musi fungovat
LukasCZ
Profil
ne ne, to funguje jen když je tam jeden checkbox s jednou hodnotou, jinak to nefunguje, když je tam víc hodnot.

Mám-li v databázi v poli color hodnoty (cervena, zelena, zluta) - melo by to zatrhnout vse krome modre, ale to nedela, nezatrhne to nic :(

<?php echo $color=='cervena' ? "checked" : ""?>

<?php echo $color=='zelena' ? "checked" : ""?>

<?php echo $color=='zluta' ? "checked" : ""?>

<?php echo $color=='modra' ? "checked" : ""?>

(do pole SET / ENUM se mi to vkládá v pohodě, problém je s výpisem, že to neukáže hodnoty, který se do databáze vložili)
Hugo
Profil
No, uz to vidim. Nejdriv musis to co dostanes z databaze rozdelit pomoci funkce explode(), protoze to tam vkladas jako nekolik hodnot.

$pole = Explode (',', $color);
<input name='cervena' type='checkbox' value='cervena' <?php echo (In_Array($pole,'cervena')) ? "checked" : ""?> >


Snad tam neni moc chyb :-)
LukasCZ
Profil
No Hugo, díky moc, ale měl jsi tam jednu chybičku, bez který to nefunguje :o)

místo

<input name='cervena' type='checkbox' value='cervena' <?php echo (In_Array($pole,'cervena')) ? "checked" : ""?> >


má být

<input name='cervena' type='checkbox' value='cervena' <?php echo (In_Array('cervena',$pole)) ? "checked" : ""?> >


jinak vše funguje ok, snad to pomůže i ostatním :o)
Hugo
Profil
Nojo, psal sem to po pameti, a ta ma pamet ...
Toto téma je uzamčeno. Odpověď nelze zaslat.

0