İçeriğe geç
PHP Checkbox Kullanımı | dogrukod.com

PHP checkbox Kullanımı

PHP checkbox ifadesini iki farklı şekilde kullanabiliriz, birincisi sıkça gördüğümüz tek bir checkbox ile şartları kabul etme, yani onay alma mevzusu. ikincisi listelerde birden fazla maddeyi seçip çoklu işlem yaptırma.

Checkbox ile onay işlemi

Bir checkbox ekliyoruz ve kod kısmında yalnızca elemana verdiğimiz adın gönderilip gönderilmediğine bakarak seçilip seçilmediğini anlıyoruz.

form.php:

<form action="kontrol.php" method="post">
    <label><input type="checkbox" name="onay"/> Onaylıyorum</label>
    <input type="submit" value="Tamam">
</form>

Ekran çıktısı

checkbox by php, checkbox kullanımı php, php array örnekleri, php checkbox, php checkbox ajax, php checkbox array, php checkbox array post, php checkbox array value, php checkbox button, php checkbox checked kontrolü, php checkbox kullanımı, php checkbox veritabanı kayıt, php checkbox veritabanına kaydetme, php for checkbox, php örneği, php örnekleri basit, php proje örnekleri
PHP checkbox ekran çıktısı | dogrukod.com

bu kodlamada “Onaylıyorum“a tıklandığında checkboxu harekete geçirmeyi sağlıyoruz.

kontrol.php:

if(isset($_POST['onay'])) { // checkbox seçilmişse "on" değeri gönderiliyor
    echo 'Onayladınız!';
} else { // seçilmemişse bu değer sayfaya hiç gönderilmiyor
    echo 'Onaylamadınız.';
}

Bu kodlama da sadece isset fonksiyonu ile seçilip seçilmediğini kontrol etmemiz gerekiyor. Eğer seçilmezse sayfaya checkboxun adında bir değer gitmiyor, eğer seçilirse de “on” değeri gönderiliyor.

Php Checkbox ile çoklu seçim ve işlem uygulama

Checkboxta çoklu seçim için array mantığını kullanıyoruz.

form.php:

<form action="kontrol.php" method="post">
    <label><input type="checkbox" name="sebzeler[]" value="domates"/> domates</label><br/>
    <label><input type="checkbox" name="sebzeler[]" value="salatalık"/> patlıcan</label><br/>
    <label><input type="checkbox" name="sebzeler[]" value="kabak"/> kabak</label><br/>
    <input type="submit" value="Tamam">
</form>

kontrol.php:

if(isset($_POST['sebzeler'])) {
    $sebzeler = $_POST['sebzeler'];
 
    echo 'Seçtiğiniz sebzeler: <br/>';
 
    foreach($sebzeler as $sebze) {
        echo ' * ' . $sebze . ' <br/>';
    }
} else {
    echo 'Hiç sebze seçmediniz.';
}

Checkboxların her birinin name yani isim değerine “sebzeler[]” dedik, buradan bu olayın array mantığıyla aynı derecede. Böylece her seçilen madde “Sebzeler” değerine bir array elemanı olarak ekleniyor. Daha iyi anlayabilmemiz için  kontrol.php en başına print_r($_POST) yazarak gelen sonucu daha iyi görebiliriz.

Array
(
    [meyveler] => Array
        (
            [0] => domates
            [1] => salatalık
            [2] => kabak
        )
 
)
checkbox by php, checkbox kullanımı php, php array örnekleri, php checkbox, php checkbox ajax, php checkbox array, php checkbox array post, php checkbox array value, php checkbox button, php checkbox checked kontrolü, php checkbox kullanımı, php checkbox veritabanı kayıt, php checkbox veritabanına kaydetme, php for checkbox, php örneği, php örnekleri basit, php proje örnekleri
PHP Checkbox | dogrukod.com

Çoklu seçilen maddeleri toplu silme uygulama

Bu olayı size bir örnekle daha net bir şekilde anlatabiliriz;

form.php

<form action="kontrol.php" method="post">
    <label><input type="checkbox" name="sil[]" value="1"/> Birinci başlık</label><br/>
    <label><input type="checkbox" name="sil[]" value="2"/> ikinci başlık</label><br/>
    <label><input type="checkbox" name="sil[]" value="3"/> üçüncü başlık</label><br/>
    <label><input type="checkbox" name="sil[]" value="4"/> dördüncü başlık</label><br/>
    <input type="submit" value="Seçilileri sil">
</form>

Şimdi bu form ile birden fazla yazı seçildiğinde kontrol.php sayfasına silinecek yazılarının NO’sunu içeren “sil” adında bir array gönderilmiş olacak.

kontrol.php:

if(isset($_POST['sil'])) {
    $silinecekler = implode(', ', $_POST['sil']);
    mysql_query('DELETE FROM yazilar WHERE NO IN ( ' . $silinecekler . ' )');
    echo count($_POST['sil']) . ' adet yazı silindi.';
}

Bu sefer gelen arrayı implode ile birleştirdik, yani eğer 1. ve 4. yazıyı seçip formu gönderirsek $silinecekler değişkeni “1, 4” şeklinde bir değer almış olacaktır. ve daha sonra içerikleri silecek, MySQL sorgusu ise şöyle olacak “DELETE FROM yazılar WHERE NO IN ( 1, 4 )” ve bu iki seçilmiş yazıyı silmiş olacağız.

Tek Yorum

  1. Leyla güneş Leyla güneş

    Çok yardımcı oldunuz teşekkür ederim.🙂

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir