Checkbox in php formulier

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3 volgende »

- SanThe -

- SanThe -

05/08/2010 20:09:50
Quote Anchor link
Karel chakar op 04/08/2010 19:20:29:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php echo '<input type="checkbox" name="deadline1" value="Ja" ' . (isset($_POST['deadline1']) ? 'checked="checked"' : '') . ' />';  

if (!empty($_POST['deadline1']))
{

echo 'Yay! Checkbox';
}
else { echo '1 maand'; }
 ?>


Op regel 3 zie ik geen isset().
Gewijzigd op 05/08/2010 20:10:29 door - SanThe -
 
PHP hulp

PHP hulp

25/12/2024 15:14:45
 
Karel chakar

karel chakar

05/08/2010 20:15:22
Quote Anchor link
Bedankt voor de reactie, waar moet ik de isset plaatsen, ik zie het niet sorry ?

[code
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php echo '<input type="checkbox" name="deadline1" value="Ja" ' . (isset($_POST['deadline1']) ? 'checked="checked"' : '') . ' />';  

if (isset($_POST['deadline1']))
{

echo 'Yay! Checkbox';
}
else { echo '1 maand'; }
 ?>


Is het dan zo juist, of moet ook het uitroepteken voor isset staan ?

Kan je de code even niet aanpassen zou het appreciëren

Alvast bedankt.
Gewijzigd op 05/08/2010 20:22:40 door karel chakar
 
- SanThe -

- SanThe -

05/08/2010 21:12:28
Quote Anchor link
Wat jij maar wilt natuurlijk.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
// op de ene manier
if (isset($_POST['deadline1']))
{

    echo 'Checkbox is checked';
}

else
{
    echo 'Checkbox is NOT checked';
}


// of op de andere manier
// de uitroepteken betekent NOT

if (!isset($_POST['deadline1']))
{

    echo 'Checkbox is NOT checked';
}

else
{
    echo 'Checkbox is checked';
}

?>
 
Karel chakar

karel chakar

06/08/2010 09:07:05
Quote Anchor link
Bedankt voor alles maar nog steeds niet. Het werkt als ik de checkbox aanvink, doe ik dit niet dan krijg ik een notice bericht.

De eerste regel van mijn code is toch juist hé ?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php echo '<input type="checkbox" name="deadline1" value="Ja" ' . (isset($_POST['deadline1']) ? 'checked="checked"' : '') . ' />';  

if (isset($_POST['deadline1']))
{

echo 'Checkbox is NOT checked';
}

else
{ echo 'Checkbox is Checked'; }
 ?>


Kan het anderes zijn dat het iets te maken heeft met Chaptcha , mijn formulier gebruikt dit nammelijk. Hieronder de code van het Captcha gedeelte.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php if($cfg['CAPTCHA'])
        {

            $code = $_POST['code'];
        }

                
        if(empty($naam) || (strlen($naam) < 3) || eregi("[<>]", $naam) )
        {

            $aFout[] = "Er is geen naam ingevuld.";
            unset($naam);
            $fout['text']['naam'] = TRUE;
            $fout['input']['naam'] = TRUE;
        }

                
        if(empty($email))
        {

            $aFout[] = "Er is geen e-mail adres ingevuld.";
            unset($email);
            $fout['text']['email'] = TRUE;
            $fout['input']['email'] = TRUE;
        }

        elseif(checkmail($email) == 0)
        // Wanneer je PHP 5.2 > gebruikt
        //elseif(!filter_var($email, FILTER_VALIDATE_EMAIL))

        {
            $aFout[] = "Er is geen correct e-mail adres ingevuld.";
            unset($email);
            $fout['text']['email'] = TRUE;
            $fout['input']['email'] = TRUE;
        }

        
        if($cfg['CAPTCHA'])
        {

            if(strtoupper($code) != $_SESSION['captcha_code'])
            {

                $aFout[] = "Er is geen correcte code ingevuld.";
                $fout['text']['code'] = TRUE;
                $fout['input']['code'] = TRUE;
            }
        }

        
        if(!empty( $aFout ))
        {

            $errors = '
            <div id="errors">
            <ul>'
;
            foreach($aFout as $sFout)
            {

                $errors .= "    <li>".$sFout."</li>\n";
            }

            $errors .= "</ul>
            </div>"
;
        }

        else ?>
Gewijzigd op 06/08/2010 09:13:16 door karel chakar
 
Obelix Idefix

Obelix Idefix

06/08/2010 09:17:29
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
echo '<form action="" method="POST">';
echo '<input type="checkbox" name="deadline1" value="Ja" ' . (isset($_POST['deadline1']) ? 'checked="checked"' : '') . ' />';  
echo '<input type="submit" name="Submit" value="Verzenden">';
echo '</form>';

if (isset($_POST['deadline1']))
{
    echo 'Checkbox is checked';    }
else
{ echo 'Checkbox is NOT checked'; }
 ?>


Bovenstaande werkt (in FF)

Je geeft niet aan wat je notice-melding is.
 
Karel chakar

karel chakar

06/08/2010 09:34:10
Quote Anchor link
Bedankt voor de reactie maar het werkt niet ! Nog steeds krijg ik hetzelfde resultaat.

De fotmelding: Notice: Undefined index

Is het probleem niet dat ik ergens aan de variabel moet zeggen dat het hier om een checkbox gaat ?
Gewijzigd op 06/08/2010 09:42:33 door karel chakar
 
- SanThe -

- SanThe -

06/08/2010 12:03:36
Quote Anchor link
Het werkt hier perfect.

Is die Notice wel van dat stukje?
Oftewel kijk je wel op de juiste regel?
 
Karel chakar

karel chakar

06/08/2010 12:08:54
Quote Anchor link
Ja, ik kijk op de juiste regel
Dus moet het iets te maken hebben met de rest van het document ?
Misschien dan toch de Captcha ? Kon je de code even bekijken ?
 
- SanThe -

- SanThe -

06/08/2010 12:12:22
Quote Anchor link
Quote:
Notice: Undefined index


Wat is het eerste woord dat daarachter staat?
 
Karel chakar

karel chakar

06/08/2010 12:14:59
Quote Anchor link
Tja, index dus. Ben al meerdere dgen aan het proberen en vindt dus echt het probleem niet ? Misschien zie ik ze al vliegen. Weet jij nog iets wat me zou kunnen helpen ?

By the way, klein ander vraagje dit zijn checkboxes onder elkaar, ik wens deze achter elkaar, hoe doe je dit ?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
$field_16 = array();
$field_16[0]=$_POST[ "Checkbox01_field_16"];
$field_16[1]=$_POST[ "Checkbox02_field_16"];
$field_16[2]=$_POST[ "Checkbox03_field_16"];
$_POST[ "field_16" ] = join( PHPFMG_LNCR, $field_16);
 
- SanThe -

- SanThe -

06/08/2010 12:23:52
Quote Anchor link
Karel chakar op 06/08/2010 12:14:59:
Tja, index dus.

Dus er staat Notice: Undefined index index ...
Als dat zo is dan zit je naar de verkeerde regel te kijken.

Karel chakar op 06/08/2010 12:14:59:
... dit zijn checkboxes onder elkaar ...
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
$field_16 = array();
$field_16[0]=$_POST[ "Checkbox01_field_16"];
$field_16[1]=$_POST[ "Checkbox02_field_16"];
$field_16[2]=$_POST[ "Checkbox03_field_16"];
$_POST[ "field_16" ] = join( PHPFMG_LNCR, $field_16);

Dit zijn geen checkboxen. Dit zijn array()'s.
 
Karel chakar

karel chakar

06/08/2010 12:27:49
Quote Anchor link
Ok, zoals je ziet ben ik nog wel een beginner in php.

Dus dit zijn array's die op mijn pagina de chackboxen weergeven. Op mijn pagina worden deze dus onder elkaar weergegeven en ik wens ze achter elkaar.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<li class='field_block' id='field_16_div'><div class='col_label'>
    <label class='form_field'>Wanneer is je deadline(Deadline) ?</label> <label class='form_required' >&nbsp;</label> </div>
    <div class='col_field'>
    <?php phpfmg_checkboxes( 'field_16', "1 maand|2 maand|3 maand|Geen deadline|andere" );?>
    <div id='field_16_tip' class='instruction'></div>
    </div>
</li>
Dit is de regels waar de checkboxen staan op mijn pagina.
 
- SanThe -

- SanThe -

06/08/2010 12:32:21
Quote Anchor link
Dan moet je in deze functie kijken: phpfmg_checkboxes
Gewijzigd op 06/08/2010 12:32:36 door - SanThe -
 
Karel chakar

karel chakar

06/08/2010 12:35:49
Quote Anchor link
Hierbij de functie maar ik zie niet wat hier zou moeten of kunnen aanpassen ?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<?php function phpfmg_checkboxes( $name, $options, $isReturn = false ){
    return phpfmg_choice( 'checkbox', $name, $options, $isReturn );?>
Gewijzigd op 06/08/2010 12:36:38 door karel chakar
 
- SanThe -

- SanThe -

06/08/2010 12:36:53
Quote Anchor link
Nu moet je weer in phpfmg_choice kijken.
 
Karel chakar

karel chakar

06/08/2010 12:39:21
Quote Anchor link
Ok word nog leuk.

Hierbij de code.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php function phpfmg_choice( $type, $name, $options, $isReturn = false ){
    $radios = array();
    $list = explode( '|', $options );
    if( is_array($list) ){
        $i = 0 ;
        foreach( $list as $opt ){
            //$value = HtmlSpecialChars( $opt );
            $o = phpfmg_parse_option( $opt );
            $id = "{$name}_{$i}";
            $newname = 'checkbox' == $type ? "Checkbox" . substr("00".($i+1), strlen("00".($i+1))-2,2) . "_" . $name : $name;
            if( isset($_POST['formmail_submit']) ){
                $checked = $o['value'] == $_POST[ $newname ]  ? 'checked' : '' ;
            }
else{
                $checked = $o['default'] ? 'checked' : '' ;
            };
?>
</code]
Gewijzigd op 06/08/2010 12:42:21 door karel chakar
 
- SanThe -

- SanThe -

06/08/2010 12:45:43
Quote Anchor link
Dit is een halve functie.
 
Karel chakar

karel chakar

06/08/2010 12:51:57
Quote Anchor link
Mijn fout dan, sorry.

Opnieuw:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php function phpfmg_choice( $type, $name, $options, $isReturn = false ){
    $radios = array();
    $list = explode( '|', $options );
    if( is_array($list) ){
        $i = 0 ;
        foreach( $list as $opt ){
            //$value = HtmlSpecialChars( $opt );
            $o = phpfmg_parse_option( $opt );
            $id = "{$name}_{$i}";
            $newname = 'checkbox' == $type ? "Checkbox" . substr("00".($i+1), strlen("00".($i+1))-2,2) . "_" . $name : $name;
            if( isset($_POST['formmail_submit']) ){
                $checked = $o['value'] == $_POST[ $newname ]  ? 'checked' : '' ;
            }
else{
                $checked = $o['default'] ? 'checked' : '' ;
            };

            //$radios[] = "<input type='{$type}' name='{$newname}' id='{$id}'  value=\"{$o['value']}\"  {$checked} class='form_{$type}' ><label class='form_{$type}_text' onclick=\"fmgHandler.choice_clicked('{$id}');\" onmouseover=\"this.className='form_{$type}_text form_choice_over';\" onmouseout=\"this.className='form_{$type}_text form_choice_out';\">{$o['text']}</label><br />";
            $labelLeft = ''; //0 == $i ? '' : "<div class='form_field'>&nbsp;</div><div class='choice'>&nbsp;</div>" ; // spacer for text algin left            
            $radios[] = "{$labelLeft}<input type='{$type}' name='{$newname}' id='{$id}'  value=\"{$o['value']}\"  {$checked} class='form_{$type}' ><label class='form_choice_text' for='{$id}'>{$o['text']}</label><br>";
            $i ++ ;
        };
    };

    $s = join("\t\n",$radios);
    //$s = "<div class='choices'>$s</div>";

    if( $isReturn )
        return $s;
    else
        echo $s ;
}



?>
 
- SanThe -

- SanThe -

06/08/2010 12:59:42
Quote Anchor link
Regel 22, zet die eens uit.
Dus
$s = join("\t\n",$radios);
wordt
// $s = join("\t\n",$radios);
 
Karel chakar

karel chakar

06/08/2010 13:04:33
Quote Anchor link
Neen dat is het niet ! Als ik dat doe dan zijn al de chackboxes niet meer te zien (alles weg dus)
 

Pagina: « vorige 1 2 3 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.