PHP.EE FOORUM   
Nimi:   Pass:   Mäleta mind! 
   Teemad | php.ee esilehele | registreeri | Märgi kõik teemad loetuks | #php.ee Skype vestlus | RSS
UUS TEEMA  OTSI  Lehekülgi: 1
Probleem checkboxiga
Postitaja: Checkbox 2006-07-02 14:15:53
Vormis on järgmine checkbox

<input type="checkbox" name="kustuta1" value="kustuta" />

Kui nüüd vorm submittida annab järgmise veateate
TSITEERITUD:

Notice: Undefined index: kustuta1 in /aadress/leht.php on line 10


Kui aga type="checkbox" asemel kirjutada type="text", siis veateadet ei tule. Miks ei suudeta checkboxi väärtust edastada?
RE: Probleem checkboxiga
Postitaja: Checkbox 2006-07-02 14:21:05
Sellist probleemi ei teki, kui checkboxi välja linnuke teha :S

Aga kuidas nn tühiväärtus edukalt edastada saaks?
RE: Probleem checkboxiga
Postitaja: brainard 2006-07-02 14:24:14
kui tsekkbox pole selectitud, siis teda ei saadetagi vormii submittimisel kaasa.

if( isset($_POST['kustuta1']) ){
// tee mida peab tegema kui linnuke ees
}
else{
// tee mida peab siis tegema kui linukest polnud ees
}
RE: Probleem checkboxiga
Postitaja: Checkbox 2006-07-02 14:25:57
TSITEERITUD:
kui tsekkbox pole selectitud, siis teda ei saadetagi vormii submittimisel kaasa.

if( isset($_POST['kustuta1']) ){
// tee mida peab tegema kui linnuke ees
}
else{
// tee mida peab siis tegema kui linukest polnud ees
}
Ongi umbes kontroll, aga enne kui kontrollini jõuab, visatakse veateade.
RE: Probleem checkboxiga
Postitaja: Keegi_Teine 2006-07-03 11:13:06
TSITEERITUD:
Ongi umbes kontroll, aga enne kui kontrollini jõuab, visatakse veateade.


seljuhul näita meile ikka kogu koodi
RE: Probleem checkboxiga
Postitaja: Checkbox 2006-07-03 16:07:09
TSITEERITUD:


seljuhul näita meile ikka kogu koodi

Kogu koodi oleks karm näidata.

Põhimõte on järgnev:

PHP kood:
 
$lisa 
= new Lisamine;

if (isset(
$_POST['lisa']))
{
    
$lisa->($_POST['kustuta1']); // <- siia annabki Notice'i, et muutuja defineerimata
}    
RE: Probleem checkboxiga
Postitaja: Keegi_Teine 2006-07-03 16:10:39
TSITEERITUD:

Kogu koodi oleks karm näidata.

Põhimõte on järgnev:

PHP kood:
 
$lisa 
= new Lisamine;

if (isset(
$_POST['lisa']))
{
    
$lisa->($_POST['kustuta1']); // <- siia annabki Notice'i, et muutuja defineerimata
}    


kustuta1 kantakse ainult siis üle, kui ta on checkitud, kui ta ei ole checkitud, siis teda edasi ei kanta

enne, kui mdiagi sellega teha saad, tuleb ikka kontrollida, kas muutuja olemas on... kontrolli kood sulle juba korra visati siia nii et jõudu !
RE: Probleem checkboxiga
Postitaja: Checkbox 2006-07-03 16:27:09
TSITEERITUD:


kustuta1 kantakse ainult siis üle, kui ta on checkitud, kui ta ei ole checkitud, siis teda edasi ei kanta

enne, kui mdiagi sellega teha saad, tuleb ikka kontrollida, kas muutuja olemas on... kontrolli kood sulle juba korra visati siia nii et jõudu !
Nojah, mul on ptaegu nii tehtud, et kontroll toimub meetodi lisamine sees :(
RE: Probleem checkboxiga
Postitaja: karuott 2006-07-03 17:04:53
TSITEERITUD:
Nojah, mul on ptaegu nii tehtud, et kontroll toimub meetodi lisamine sees :(


Register globals muutujate poole peaks pöörduma läbi vastavate meetodite.

function getPost($gp)
{
if(isset($_POST[$gp])){ return $_POST[$gp]; }else{ return false; }
}
RE: Probleem checkboxiga
Postitaja: Checkbox 2006-07-03 17:36:38
Sain probleemi lahendatud, lisaded kontrolli enne lisamis-meetodi.
RE: Probleem checkboxiga
Postitaja: Checkbox 2006-07-03 17:37:01
Aitäh abistajatele :)
RE: Probleem checkboxiga
Postitaja: Endel 2006-07-06 19:07:43
TSITEERITUD:

Register globals muutujate poole peaks pöörduma läbi vastavate meetodite.


Ära õpeta noorele inimesele globaalmuutujate poole pöörduma. Ja ära õpeta register_globalsit kasutama.

Muidu ok.
RE: Probleem checkboxiga
Postitaja: Endel 2006-07-06 19:10:36
Probleemist ka.

Mina olen teinud vormile kaks huinjaad.

<input name="kustuta1" value="0" type="hidden">
<input name="kustuta1" value="1" type="checkbox">

Kui checkbox on checkitud, siis saadetakse 1; kui mitte siis saadetakse 0. Suurte vormide puhul on mugavam.

Häda on ainult, et Javascriptiga pöördumisel tuleb teha teisiti:
form[0].elements['kustuta1'][1]
RE: Probleem checkboxiga
Postitaja: Ajulääbar 2006-07-07 10:36:47
no checkbox peaks olema ikka loogiline lülitus mille vaikimis väärtus on kas kinni või lahti olenevalt loogikast. Ehk siis lihtne boolean mille default on üks neist.
Kasvõi $v = isset($_POST['boolean']) ? 0 : 1;

Lihtne?
Ja siis teeme õlut ja siis käime ehal.
RE: Probleem checkboxiga
Postitaja: Endel 2006-07-07 10:48:53
TSITEERITUD:
no checkbox peaks olema ikka loogiline lülitus mille vaikimis väärtus on kas kinni või lahti olenevalt loogikast. Ehk siis lihtne boolean mille default on üks neist.
Kasvõi $v = isset($_POST['boolean']) ? 0 : 1;


Kui vorm on mitmel lehel siis ei tea kas kirjutada väärtus üle või jätta puutumata. Kuna ma olen laisk teen pigem nii kui et hakkan lehekülje kaupa kontrollima.

TSITEERITUD:
Lihtne?
Ja siis teeme õlut ja siis käime ehal.


Sounds good.
RE: Probleem checkboxiga
Postitaja: Ajulääbar 2006-07-07 11:21:46
TSITEERITUD:

Kui vorm on mitmel lehel siis ei tea kas kirjutada väärtus üle või jätta puutumata. Kuna ma olen laisk teen pigem nii kui et hakkan lehekülje kaupa kontrollima.

Nojaa, selleks ongi tarkvara disain, et teaks mida tarkvara teeb. Reusability peaks olema programmeerija parim sõber eduka, kiire, kindla takrvara loomisel.
RE: Probleem checkboxiga
Postitaja: Endel 2006-07-07 13:36:22
TSITEERITUD:
Nojaa, selleks ongi tarkvara disain, et teaks mida tarkvara teeb. Reusability peaks olema programmeerija parim sõber eduka, kiire, kindla takrvara loomisel.


On ju reusable.

Leheküljed: 1

©2002-2013 Martin Rebane & PHP.ee kaasautorid
  0.0915460586548