Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: checkboxit 'on' vai ei ?

Samu [03.10.2005 19:29:56]

#

Eli jos mul on monta checkboxia ja haluan laskee kuin monta niistä on valittu 'on' esim. countilla niin miten se käy päinsä? Mul laskee kaikki. Pitääks ne "nullata" tai jotai? Auttakee aloittelijaa edes pikkasen,KIITOS!!

exAtuu [04.10.2005 04:26:07]

#

Muistaakseni tässä pystyi käyttämään taulukkojekkua, eli annat jokaiselle checkboxille nimeksi esimerkiksi jeh[järjestysnumero] tyyliin tämä:

...name="jeh[1]"...
...name="jeh[2]"...

Nyt voit sitten PHP-koodissa loopata kyseisen taulukon läpi ja tarkistaa mitkä namiskat valittiinkaan:

<?php
foreach ($_POST["jeh"] as $i => $a) {
  if ($a) echo "Namiska {$i} on valittu.\n";
}
?>

EDIT: oops :)
EDIT: ei järki juokse enää :P tässä vielä esimerkki: http://masavista.dy.fi/namiska.php

wwwapu [04.10.2005 11:59:57]

#

Tässä on nyt sitten käytetty sitä count()ia. On vähän muutakin. Siitä vaan tutkimaan ja veivaamaan.

<?php
if(isset($_POST['jeh'])){
	for($i=0; $i<count($_POST["jeh"]);$i++) {
		echo "Poksi {$_POST['jeh'][$i]} on valittu.\n";
	}
	$i>1?$a='a':$a=''; //vitsi miten jännä, mutta hankala lukea äkkinäisen
	print $i . ' Poksi'.$a.' valittuna yhteensä.';
}


$tsarvot=array('ykköi', 'kakkoi', 'kolmoi', 'neloi', 'vitoi', 'kutoi');

print'
<form method="post" action="'.$_SERVER['PHP_SELF'].'">';

for($i=0; $i< count($tsarvot); $i++){
	$tsekattu='';
	if(isset($_POST['jeh']) && in_array($tsarvot[$i], $_POST['jeh'])){
		$tsekattu=' checked="checked"';
	}
	print '
	<input type="checkbox" name="jeh[]" value="'.$tsarvot[$i].'"' .$tsekattu.'/> Poksi '.$tsarvot[$i].'<br />';
}
?>
	<input type="submit" value="KATO" />
</form>

Samu [22.10.2005 10:31:21]

#

Jeps,oli vähän taukoa! Kiitos vastanneille!!!

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta