Foreach kurgusu

PHP ve MySQL ile ilgili yardım taleplerinizi paylaşabilirsiniz.
Cevapla
Özgür
Deneyimli Üye
Deneyimli Üye
Mesajlar: 351
Kayıt: 16 Şub 2009, 01:16

Foreach kurgusu

Mesaj gönderen Özgür » 04 May 2011, 16:42

klasik foreach örneği

Kod: Tümünü seç

<? 
$renkler = array('Kırmızı','Mavi','Sarı','Pembe','Siyah');   // $renkler'in elemanlarını oluşturduk arrray=diziler
         foreach($renkler as $elemanlar)   //Foreach döngüsü, bir dizi değişkenin herbir elemanı için istenilen işlemi yapar. For döngüsündeki gibi kaç defa tekrar edileceğini belirtmeyiz. $renkler $elemanlar değerine atanmış oldu
            {   
              echo $elemanlar."<br>";   
            }   
?> 

Buraya kadar yapabiliyorum fakat aşağıdaki kurguyu okuyamıyorum

Kod: Tümünü seç

<?
foreach ($_POST as $a=>$b){ // a 'dan b'ye gidene kadar döngü
if($a=="c1"){mysql_query("insert into cevaplar (tid,cid,sid,secenek_adi,cevap,durum) values ($tid,'',$sid,'a','$b',$ynt1)");}
if($a=="c2"){mysql_query("insert into cevaplar (tid,cid,sid,secenek_adi,cevap,durum) values ($tid,'',$sid,'b','$b',$ynt2)");}
if($a=="c3" and $b){mysql_query("insert into cevaplar (tid,cid,sid,secenek_adi,cevap,durum) values ($tid,'',$sid,'c','$b',$ynt3)");}
if($a=="c4" and $b){mysql_query("insert into cevaplar (tid,cid,sid,secenek_adi,cevap,durum) values ($tid,'',$sid,'d','$b',$ynt4)");}
if($a=="c5" and $b){mysql_query("insert into cevaplar (tid,cid,sid,secenek_adi,cevap,durum) values ($tid,'',$sid,'e','$b',$ynt5)");}
							}

?>
Özellikle $_POST as $a=>$b
ve
if($a=="c3" and $b) anlamını yazar mısınız? Yardımcı olabilir misiniz?

Kullanıcı avatarı
Gökhan
Deneyimli Üye
Deneyimli Üye
Mesajlar: 390
Kayıt: 11 Şub 2009, 22:57

Re: Foreach kurgusu

Mesaj gönderen Gökhan » 04 May 2011, 18:28

Özgür, kodları code tagleri içerisinde yazarsan daha iyi olur, yazılardan da ayrılmış olur;

foreach mantığında;

foreach($dizi as $a=>$b) şeklinde kullanırsan,

örneğin;
$dizi = array("data1","data2","data3"); // ise

$dizi[0] = "data1";
$dizi[1] = "data2";
$dizi[2] = "data3"; // indexlemesi gerçekleşir ve

$a indexi, $b ise değerini temsil eder.


Konuyu, formdan POST verisi alacak şekilde irdelersek.

Örneğin;
<input type="text" name="postverisi" value="Bu veya kullanıcının girdiği"> //--> Post edilirse

bu durumda $a --> $postverisi ve $b --> "Bu veya kullanıcının girdiği" //--> Değerleri temsil eder.

Özgür
Deneyimli Üye
Deneyimli Üye
Mesajlar: 351
Kayıt: 16 Şub 2009, 01:16

Re: Foreach kurgusu

Mesaj gönderen Özgür » 04 May 2011, 21:12

Teşekkür ederim

Özgür
Deneyimli Üye
Deneyimli Üye
Mesajlar: 351
Kayıt: 16 Şub 2009, 01:16

Re: Foreach kurgusu

Mesaj gönderen Özgür » 21 Nis 2015, 21:00

Kod: Tümünü seç

if(!$c1){echo "Ýlk iki seçenek boþ olmamalý, a þýkký boþ<a href=\"JavaScript:history.back()\">Geri (Back)</a>";exit;}
if(!$c2){echo "Ýlk iki seçenek boþ olmamalý, b þýkký boþ<a href=\"JavaScript:history.back()\">Geri (Back)</a>";exit;}
.....
if(!$ynt1){$ynt1=2;}else{$ynt1=1;}
if(!$ynt2){$ynt2=2;}else{$ynt2=1;}
if(!$ynt3){$ynt3=2;}else{$ynt3=1;}
.....
foreach ($_POST as $a=>$b){ 
if($a=="c1"){mysql_query("insert into cevaplar (tid,cid,sid,secenek_adi,cevap,durum) values ($tid,'',$sid,'a','$b',$ynt1)");}
if($a=="c2"){mysql_query("insert into cevaplar (tid,cid,sid,secenek_adi,cevap,durum) values ($tid,'',$sid,'b','$b',$ynt2)");}
if($a=="c3" and $b){mysql_query("insert into cevaplar (tid,cid,sid,secenek_adi,cevap,durum) values ($tid,'',$sid,'c','$b',$ynt3)");}

Cevapla

Kimler çevrimiçi

Bu forumu görüntüleyen kullanıcılar: Hiç bir kayıtlı kullanıcı yok ve 2 misafir