arkadaşlar şöyle bir sorum olucak.
benim bir adet combobox'ım var. 1 den 10'a kadar rakamlar yazıyor. bunları yolcu adeti için koydum siteye.
mesela o formdan 5 seçildi bu demek oluyor ki 5 adet yolcu var.
adam tamam butonuna basınca 2. sayfada 5er adet
ad - soyad - cinsiyet - pasaport no
bilgileri gelmesi lazım sanırım dizi ile olucak.
mesela ad[1] ad[2] , soyad[1] soyad[2] gibi gibi olucak. fakat
kullanımda pratiğim yok fikrim yok araştırdım ama tam beceremedim..
bu bilgileri veritabanına kayıt edicem nasıl kayıt etmeliyim , veritabanından çekerken problem olmadan vs.. biraz geniş düşünerek fikir ve yardımlarınızı yazarsanız sevinirim , şimdiden sağolun
dizi(array) hakkında yardım
9
●815
- 12-04-2010, 15:10:35Üyeliği durdurulduİstediğin böyle bir şey galiba.Eğer anlamazsan bir php dosya oluşturup kaydet ve dene daha iyi anlarsın.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" /> <title>Untitled Document</title> </head> <body> <?php switch(@$_POST["HaRRiBo"]) { case 'kayit': foreach($_POST["isim"] as $koltukno => $val) { echo "<fieldset><legend>Koltuk $koltukno</legend> İsim : ".$_POST["isim"][$koltukno]."<br /> Soyisim : ".$_POST["soyisim"][$koltukno]."<br /> Cinsiyet : ".$_POST["cinsiyet"][$koltukno]."<br /> Pasaport No : ".$_POST["pasno"][$koltukno]."<br /> </fieldset>"; } break; case 'sec': if(count($_POST["koltuk"])=="0") { echo "En az bir koltuk seçin.<br><a href='?'>Geri dön...</a>"; } else { ?> <form id="form2" name="form2" method="post" action=""> <?php for($i=0; $i<count($_POST["koltuk"]); $i++) { $koltukNO = $_POST["koltuk"][$i]; ?> <table width="100%" border="0" cellspacing="5" cellpadding="0"> <tr> <td><strong>Koltuk <?=$koltukNO?> </strong></td> </tr> <tr> <td><table width="100%" border="0" cellspacing="5" cellpadding="0"> <tr> <td>İsim</td> <td><input type="text" name="isim[<?=$koltukNO?>]" /></td> </tr> <tr> <td>Soyisim</td> <td><input type="text" name="soyisim[<?=$koltukNO?>]" /></td> </tr> <tr> <td>cinsiyet</td> <td><input type="text" name="cinsiyet[<?=$koltukNO?>]" /></td> </tr> <tr> <td>pasaport no </td> <td><input type="text" name="pasno[<?=$koltukNO?>]" /></td> </tr> </table></td> </tr> </table><hr /> <?php } ?> <input type="hidden" name="HaRRiBo" value="kayit" /> <table width="100%" border="0" cellspacing="5" cellpadding="0"> <tr> <td colspan="2" align="center"><input type="submit" name="Submit" value="Kaydet" /></td> </tr> </table> </form> <?php } break; default: ?> <form id="form1" name="form1" method="post" action=""> <input type="hidden" name="HaRRiBo" value="sec" /> <table width="100%" border="0" cellspacing="5" cellpadding="0"> <tr> <td width="48%" align="center">Koltuk 1 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="1" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 2 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="2" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 3 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="3" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 4 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="4" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 5 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="5" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 6 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="6" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 7 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="7" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 8 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="8" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 9 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="9" /></td> </tr> <tr> <td width="48%" align="center">Koltuk 10 </td> <td width="52%" align="center"><input type="checkbox" name="koltuk[]" value="10" /></td> </tr> <tr> <td colspan="2" align="center"><input type="submit" name="Submit" value="Seç" /></td> </tr> </table> </form> <?php break; } ?> </body> </html> - 12-04-2010, 15:13:43Üyeliği durdurulduCheckbox ile yaptım ama combobox ile şu şekilde aynı olur
<select name="koltuk[]" size="10" multiple="multiple"> <option value="1">Koltuk 1</option> <option value="2">Koltuk 2</option> <option value="3">Koltuk 3</option> <option value="4">Koltuk 4</option> <option value="5">Koltuk 5</option> <option value="6">Koltuk 6</option> <option value="7">Koltuk 7</option> <option value="8">Koltuk 8</option> <option value="9">Koltuk 9</option> <option value="10">Koltuk 10</option> </select> - 13-04-2010, 14:45:42yolcusayısı değişkenini bir önceki sayfada alıp bu sayfamda onların comboboxtan belirttikleri kadar ad ve soyad falan soruyor. burda name değerlerine ad ve soyad 'ı dizi olarak belirledim.
<?php for($i=1;$i<=$yolcusayisi;$i++) { ?> <input type="text" size="6" class="text" name="ad[<?php echo $i; ?>]" /> <input type="text" size="6" class="text" name="soyad[<?php echo $i; ?>]" /> <?php } ?>diğer sayfamda bu diziden veri çekmek istiyorum. ve aşağıdaki kodları yazdım.
$ad[]=$_POST['ad']; $soyad[]=$_POST['soyad'];
verileri çekip ekrana bastıramadım foreach yapıyorum boş veriyor.
echo $ad["1"]; yapıyorum gene boş veriyor tek tırnak ta tırnaksızda denedim.
anca print_r($ad) yazınca birşeyler basıyor ekrana çıktısı bu:
Array ( [0] => Array ( [1] => ahmet [2] => hakan[3] => ali [4] => veli ) )
yani beceremedim tam olarak
- 13-04-2010, 15:48:51kodu bak degistirdim cunku $ad[] = $_POST['ad'] dedigin zaman $ad arrayinin ilk anahtarina 0 a atiyorsun butun post arrayini 2 boyutlu arrayin oluyor.AGaRoot adlı üyeden alıntı: mesajı görüntüle
bak zaten print_r da da gosteriyor
Array( [0] --- bu $ad[0]
Array ( [0] => Array ( [1] --- bu ise $ad[0][1] yani ahmet
dene bakalim boyle becerebilcen mi
buda benim arrayim
$_POST['ad'] = array ('ali', 'veli','deli'); $ad = array(); $ad = $_POST['ad']; print_r($ad); // cikti Array ( [0] => ali [1] => veli [2] => deli ) - 14-04-2010, 13:11:08evet kapitan o $deger[0][1] gibisinden yazınca bilgiyi ekrana bastı sağolasın
ufak bir sorum daha olacak acaba bunu veritabanına kaydını nasıl yapayım yani çoklu geliyor veriler anatabloma mı ekliyim yoksa ek bir tablo yaratıp id leri bağlayıp orayamı kaydedeyim ? anatabloma başka verilerde eklenicek ama bir kez şimdi dizi olarak measla 5 tane geldi busefer 5 kez ekleme yapacak bunu nasıl çözeriz acaba ?
- 14-04-2010, 13:15:16Array ile ilgili olarak Burayı inceleminizi öneririm.AGaRoot adlı üyeden alıntı: mesajı görüntüle
- 14-04-2010, 16:50:28AGaRoot adlı üyeden alıntı: mesajı görüntüle
veri tablo yapini yazarsan bi bakayim bakmadan soylemek zor
mesel şu kodda.
$_POST['ad'] = array ('ali', 'veli','deli'); $ad = array(); $ad = $_POST['ad']; $soyad = array(); $soyad = $_POST['soyad']; print_r($ad); // cikti Array ( [0] => ali [1] => veli [2] => deli iken şöyle yapabilirsin for ($i=0;$i <= count($ad); $i++) { $sql = "INSERT INTO tablo (ad,soyad) values ('$ad[$i]','$soyad[$i]')"; mysql_query($sql); }bu sekilde girebilirsin diger verilerlede yani her bir gonderilen posta gore array in keylerine gore degistireceksin $i degerini - 14-04-2010, 18:25:58yardım için sağolasın işte bir anormallik meydana gelicek çünküKapitan adlı üyeden alıntı: mesajı görüntüle
isim soyisim gibi kişi bilgileri max 10 adet ile sınırlı.
taşıt bilgileri kısmım var araba türü ve plakasını alıyorum oda max4 adet ile sınırlı ayrıyetten 4-5 adet bilgi var onlar dizi değil tek başına..
işte benim problem 10 yolcu bilgi kaydederse bu dizi olmayanlar ve 10dan az olanlar fazla fazla ekleniyor dizilerin kaçtane eklenceği belli olmadığından nasıl düzenli kayıt yaparım biraz aklım karıştı