• Üyelik paylaşımı yasaktır! Hesabınızı başkalarına vermeyin! Hesap paylaşımları yasaklama ile sonuçlanacaktır.

PHP De CheckBoxla İş Yapma

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Exorcism

Süper Üye
Katılım
6 Şub 2016
Mesajlar
988
Beğeni Puanı
19
Yaş
21
[font='Segoe UI', 'Trebuchet MS', sans-serif]u günlerde PHP öğrenirken kendim yüzleşmiş olduğum sorunları yazıyorum. Şimdi anlatacağım olay mailbox veya bir siteye gönderilmiş mesajları toplu olarak onaylama tarzında kodlar geliştirirken çok işinize yarayacaktır eminim. Bu yazımı ikiye böleceğim, birinci parçasında basit olarak olayın mantığını kavramaya yönelik bir uygulama yazacağım. İkinci parçasında ise işin içinde MySQL da olacak. Haydi başlayalım.[/FONT][/SIZE][/color]

[b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif][color=red]1) Basit Bir Checkbox Uygulaması[/color][/FONT][/SIZE][/color][/b]
[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Burada yapacağımız işlem, checkbox nesneleri sayesinde işaretlediğimiz seçeneklerin ekrana yazdırılması. Bunun için bize gereken ilk şey; checkbox'lardan ve 1 adet gönder butonundan oluşan bir form. Bir adet örnek form hazırlayalım hemen:[/FONT][/SIZE][/color]


[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]                [/FONT][/SIZE][/color]
[code]<[/code]



[code]form[/code]





[code]action[/code]



[code]=[/code]



[code]"checkboxes.php"[/code]





[code]method[/code]



[code]=[/code]



[code]"post"[/code]



[code]>[/code]



[code]   [/code]



[code]<[/code]



[code]input[/code]





[code]type[/code]



[code]=[/code]



[code]"checkbox"[/code]





[code]name[/code]



[code]=[/code]



[code]"secenek[1]"[/code]





[code]value[/code]



[code]=[/code]



[code]"Arkadaşlık"[/code]





[code]/> Arkadaşlık<[/code]



[code]br[/code]





[code]/>[/code]



[code]   [/code]



[code]<[/code]



[code]input[/code]





[code]type[/code]



[code]=[/code]



[code]"checkbox"[/code]





[code]name[/code]



[code]=[/code]



[code]"secenek[2]"[/code]





[code]value[/code]



[code]=[/code]



[code]"İlişki"[/code]





[code]/> İlişki<[/code]



[code]br[/code]





[code]/>[/code]



[code]   [/code]



[code]<[/code]



[code]input[/code]





[code]type[/code]



[code]=[/code]



[code]"checkbox"[/code]





[code]name[/code]



[code]=[/code]



[code]"secenek[3]"[/code]





[code]value[/code]



[code]=[/code]



[code]"Çevre Edinme"[/code]





[code]/> Çevre Edinme<[/code]



[code]br[/code]





[code]/>[/code]



[code]   [/code]



[code]<[/code]



[code]input[/code]





[code]type[/code]



[code]=[/code]



[code]"checkbox"[/code]





[code]name[/code]



[code]=[/code]



[code]"secenek[4]"[/code]





[code]value[/code]



[code]=[/code]



[code]"Flört Etme"[/code]





[code]/> Flört Etme<[/code]



[code]br[/code]





[code]/>[/code]



[code]   [/code]



[code]<[/code]



[code]input[/code]





[code]type[/code]



[code]=[/code]



[code]"submit"[/code]





[code]name[/code]



[code]=[/code]



[code]"send"[/code]





[code]value[/code]



[code]=[/code]



[code]"Gönder"[/code]





[code]/>[/code]



[code]</[/code]



[code]form>

[/code]

[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Formumuz da hazır. Formda dikkat etmemiz gereken hususlar nelerdir? [/FONT][/SIZE][/color]
[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]1) Öncelikle [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Checkbox [/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]elementlerinin [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]name[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] özellikleri bir dizinin elemanlarını oluşturacak şekilde ayarlanmalı. Yani[/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]name="dizi_ismi[eleman_no]"[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] şeklinde. Her Checkbox aynı dizi ismine sahip olmalı ve o dizinin farklı bir eleman numarasına sahip olmalı, yukarıda görüldüğü gibi. [/FONT][/SIZE][/color]

[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]2) [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Checkbox[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] elemanlarının [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]value[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] özellikleri, o [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Checkbox[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]'un ne için seçildiğini, bize hangi değeri vereceğini gösterir. Yani kullanıcı yanında Arkadaşlık yazan bir [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Checkbox[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]'u işaretliyorsa, biz de ekrana Arkadaşlık yazmak istiyorsak onu işaretlediğinde, [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Checkbox[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]'un değeri([/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]value[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]) Arkadaşlık olmalı.[/FONT][/SIZE][/color]

[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]3) [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Form[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] elementinin [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]action[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] özelliği bu kodları yazacağınız sayfanın ismi olmalı. Ben sayfayı checkboxes.php ismiyle kaydettiğim için oraya da onu yazdım. Anlatıma da ona göre devam edeceğim. Get methodunu da pek sevmediğim için[/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Post methodu[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]nu kullandım.[/FONT][/SIZE][/color]

[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Şimdi formumuzdan gelecek verileri alacak olan PHP kodlarını yazmaya başlayabiliriz. Öncelikle şu ayrıntıya dikkat edelim; formun olduğu sayfa ile formdan gelen verilerin yazdırılacağı sayfa aynı olacağı için, PHP kodlarımız Gönder butonuna basıldığı zaman form'u gizleyecek ve gelen verileri işleyecek. Bunun için [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]if(!isset($_POST['send']))[/FONT]
[/b][font='Segoe UI', 'Trebuchet MS', sans-serif] koduyla başlayacağız php dosyamıza. [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]$_POST['send'][/FONT][/b][font='Segoe UI', 'Trebuchet MS', sans-serif] değişkeni ismi([/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]name[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]) [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]send [/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]olan [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Submit [/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]butonuna bastığımızda yaratılır, biz de kodumuzu eğer butona basılmamışsa formu göster, eğer basılmışsa verileri ekrana yaz şeklinde ikiye böleriz. Şimdi geldiğimiz yeri bir görelim:[/FONT][/SIZE][/color]


[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]           [/FONT][/SIZE][/color]
[code]<?php[/code]



[code]if[/code]



[code](!isset([/code]



[code]$_POST[/code]



[code][[/code]



[code]'send'[/code]



[code]])) {[/code]



[code]?>[/code]



[code]<form action=[/code]



[code]"checkboxes.php"[/code]





[code]method=[/code]



[code]"post"[/code]



[code]>[/code]



[code]<input type=[/code]



[code]"checkbox"[/code]





[code]name=[/code]



[code]"secenek[1]"[/code]





[code]value=[/code]



[code]"Arkadaşlık"[/code]





[code]/> Arkadaşlık<br>[/code]



[code]<input type=[/code]



[code]"checkbox"[/code]





[code]name=[/code]



[code]"secenek[2]"[/code]





[code]value=[/code]



[code]"İlişki"[/code]





[code]/> İlişki<br>[/code]



[code]<input type=[/code]



[code]"checkbox"[/code]





[code]name=[/code]



[code]"secenek[3]"[/code]





[code]value=[/code]



[code]"Çevre Edinme"[/code]





[code]/> Çevre Edinme<br>[/code]



[code]<input type=[/code]



[code]"checkbox"[/code]





[code]name=[/code]



[code]"secenek[4]"[/code]





[code]value=[/code]



[code]"Flört Etme"[/code]





[code]/> Flört Etme<br>[/code]



[code]<input type=[/code]



[code]"submit"[/code]





[code]name=[/code]



[code]"send"[/code]





[code]value=[/code]



[code]"Gönder"[/code]





[code]/>[/code]



[code]</form><?php[/code]



[code]}[/code]



[code]?>[/code]
[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]

[color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]Buraya kadar yaptıklarımızı [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]checkboxes.php[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] isimli bir dosyaya kaydedip çalıştırabilirseniz, Gönder butonuna bastığımızda kaybolan bir form elde etmiş olursunuz. Şimdi gönderdiğimiz verileri işlemeye geçelim. Şu ana kadar yazdığımız kodlara aynen devam ediyoruz. [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]else[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] diyerek başlıyoruz çünkü "[/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]eğer butona basılmamışsa formu göster[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]" şeklinde bir koşul girdik. Şimdi bu koşulun zıttı için kod yazıyoruz. İlk olarak [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]$secenek[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif] isminde bir değişken yaratıyoruz ve onu post methodu ile gelen [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]secenek [/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]isimli [/FONT][/SIZE][/color][b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]dizi[/FONT][/SIZE][/color][/b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]ye eşitliyoruz. Yani:[/FONT][/SIZE][/color]
[/FONT][/SIZE][/color]
[b][color=#333333][SIZE=3][font='Segoe UI', 'Trebuchet MS', sans-serif]$secenek = $_POST['secenek'];[/FONT]
[/b]
[font='Segoe UI', 'Trebuchet MS', sans-serif][font='Segoe UI', 'Trebuchet MS', sans-serif]Daha sonra [/FONT][font='Segoe UI', 'Trebuchet MS', sans-serif]foreach[/FONT][font='Segoe UI', 'Trebuchet MS', sans-serif] döngüsünü kullanarak elimize geçen dizinin tüm elemanlarını ekrana yazıyoruz. Geldiğimiz son noktayı da kodlarımıza eklersek:[/FONT][/FONT]


[font='Segoe UI', 'Trebuchet MS', sans-serif][font='Segoe UI', 'Trebuchet MS', sans-serif]          [/FONT][/FONT]
Kod:
<?php


Kod:
if


Kod:
(!isset(


Kod:
$_POST


Kod:
[


Kod:
'send'


Kod:
])) {


Kod:
?>


Kod:
<form action=


Kod:
"checkboxes.php"




Kod:
method=


Kod:
"post"


Kod:
>


Kod:
<input type=


Kod:
"checkbox"




Kod:
name=


Kod:
"secenek[1]"




Kod:
value=


Kod:
"Arkadaşlık"




Kod:
/> Arkadaşlık<br>


Kod:
<input type=


Kod:
"checkbox"




Kod:
name=


Kod:
"secenek[2]"




Kod:
value=


Kod:
"İlişki"




Kod:
/> İlişki<br>


Kod:
<input type=


Kod:
"checkbox"




Kod:
name=


Kod:
"secenek[3]"




Kod:
value=


Kod:
"Çevre Edinme"




Kod:
/> Çevre Edinme<br>


Kod:
<input type=


Kod:
"checkbox"




Kod:
name=


Kod:
"secenek[4]"




Kod:
value=


Kod:
"Flört Etme"




Kod:
/> Flört Etme<br>


Kod:
<input type=


Kod:
"submit"




Kod:
name=


Kod:
"send"




Kod:
value=


Kod:
"Gönder"




Kod:
/>


Kod:
</form><?php


Kod:
}


Kod:
else




Kod:
{


Kod:
   


Kod:
$secenek




Kod:
=


Kod:
$_POST


Kod:
[


Kod:
'secenek'


Kod:
];


Kod:
   


Kod:
echo




Kod:
"Looking for: <br/>"


Kod:
;


Kod:
   


Kod:
foreach


Kod:
(


Kod:
$secenek




Kod:
as




Kod:
$secim


Kod:
) {


Kod:
      


Kod:
echo




Kod:
$secim


Kod:
;


Kod:
      


Kod:
echo




Kod:
"<br />"


Kod:
;


Kod:
   


Kod:
}


Kod:
}


Kod:
?>



[font='Segoe UI', 'Trebuchet MS', sans-serif][font='Segoe UI', 'Trebuchet MS', sans-serif][font='Segoe UI', 'Trebuchet MS', sans-serif]Bu kodları [/FONT][font='Segoe UI', 'Trebuchet MS', sans-serif]checkboxes.php[/FONT][font='Segoe UI', 'Trebuchet MS', sans-serif] ismiyle kaydettiğimiz zaman, uğraştığımız şeyi başardığımızı görüyoruz :)[/FONT][/FONT][/FONT]
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...


Üst Alt