Dapatkan Nilai Checkbox Menggunakan Tatasusunan 13.05.08

  • PHP
  • Comments Off on Dapatkan Nilai Checkbox Menggunakan Tatasusunan
  • 0
  • Checkbox merupakan salah satu daripada form controls yang seringkali digunapakai ketika berurusan dengan one to many relationships.

    Kebiasaannya, setiap input control dalam HTML termasuk checkbox menghantar nilai kepada server-side PHP script dengan identiti tersendiri menggunakan atribut name=”variable-A”. Kaedah ini sesuai digunakan pada form yang ringkas tetapi tidak bagi form dengan multiple checkbox atau yang dinamik.

    Penyelesaian terbaik bagi masalah tersebut adalah dengan menganggap siri checkbox sebagai satu tatasusunan yang boleh diperoleh nilai masukan dari function $_POST. Hanya dengan memasukkan array index operator ‘[]’ ke dalam atribut nama checkbox control itu, matlamat ini dapat dicapai.

    [code lang=”html”]
    <input type="checkbox" name="nombor[]" value="1" />
    <input type="checkbox" name="nombor[]" value="2" />
    <input type="checkbox" name="nombor[]" value="3" />
    <input type="checkbox" name="nombor[]" value="4" />
    [/code]

    Apabila data dihantar, $_POST[‘nombor’] akan simpan sebagai tatasusunan yang mengandungi nilai yang dipilih.

    Kod berikut akan memaparkan nilai-nilai dari tatasusunan :

    [code lang=”php”]
    print_r($_POST[‘nombor’]);
    [/code]

    Hasilnya seperti berikut jika semua checkbox dipilih.

    Array
    (
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    )

    Kod sumber penuh :

    [code lang=”php”]
    <html>
    <body>
    <?php
    if(isset($_POST[‘hantar’]))
    {
    print_r("<pre>");
    print_r($_POST[‘nombor’]);
    echo "</pre>";
    }
    ?>

    <form action="<?php echo $_SERVER[‘PHP_SELF’]; ?>" method="post">
    <input type="checkbox" name="nombor[]" value="1" />1
    <input type="checkbox" name="nombor[]" value="2" />2
    <input type="checkbox" name="nombor[]" value="3" />3
    <input type="checkbox" name="nombor[]" value="4" />4
    <input name="hantar" type="submit" value="Hantar" />
    </form>

    </body>
    </html>
    [/code]

    Demo

    Related Articles

    Comments are closed.