PHP - Form İçinde Form ?
-
Merhaba arkadaşlar
bir kodum var şu şekilde sepet.php var burda sepetteki ürünler listeleniyor ve yanında sepetid leri o da tıklandığında sepetteki ürünü siliyor.
siparişi ver butonuna basınca siparis.phpde post ettiğim değerleri almalı.
sil butonuna basıncada sepetteki ürünleri silmeli.
şuan aşağıdaki verdiğim kodda silme işlemi tamam ama bu sefer sipariş ver dediğimde 3 tane sepette ürün varsa 1 tanesini yazdırıyor.
ama sil formunu kaldırdığımda çalılıyor.olay basit hali şu kodda.
<form name="siparis" method="post" action="siparis.php">
burdaki bazı kodlar döngü içinde id'ler getiriyor.
<input type="hidden" name="id" value="$id">
burda da içinde bulunan ürünleri silmek için döngü var.
<form name="sil" method="post"">
<input type="hidden" name="silID[]" value="$sepetid">
</form>
</form>
inşallah anlatabilmişimdir :S
ama kodu incelemek istersenizde bu şekilde:
<form action="siparis.php" name="siparis_form" id="siparis_form" method="post"> <?php $Musteri = $_SESSION['mid']; $sesql = mysql_query("select Count(UrunID) from sepet where MusteriID = $Musteri"); $segetir = mysql_fetch_array($sesql); $res = mysql_query("select * from sepet where MusteriID = $Musteri"); while ($ugetir = mysql_fetch_array($res)){ $urun = $ugetir[1]; $silsql = mysql_fetch_array(mysql_query("select SeID from sepet where UrunID = $urun and MusteriID = $Musteri")); $silID = $silsql[0]; $usql = mysql_query("select * from urunler where UID = $urun"); while ($sgetir = mysql_fetch_array($usql)){ ?> <div class="sicerik"> <br> <?php $fgetir = mysql_fetch_array(mysql_query("select * from urun_foto where UID = $urun")); ?> <span style="float:left;"><img src="upload/urun/<?php echo $fgetir[1];?>" width="45" height="30"></span> <span style="float:left;padding:5px;width:200px;"><a href="urun.php?id=<?php echo $sgetir['UID'];?>"><?php echo $sgetir['UBaslik'];?> </a></span> <input type="hidden" name="urun[]" value="<?php echo $sgetir['UID'];?>" /> <span style="float:left;padding-left:5px;width:90px;"><?php echo $sgetir['USonFiyat'];?> TL </span> <span style="float:left;padding-left:20px;width:20px;"><?php echo $ugetir[3];?> </span> <span style="float:left;padding-left:50px;width:90px;"><?php $sonuc = $ugetir[3]*$sgetir['USonFiyat']; echo $sonuc;?> TL</span> <span style="float:left;padding-left:45px;width:10px;"><input type="checkbox" name="ssil[]" value="<?php echo $silID?>"> <?php /*<form name="sil_form<?php echo $silID; ?>" id="sil_form<?php echo $silID; ?>" method="post"> <input type="hidden" name="sid" value="<?php echo $silID; ?>"> </form>*/ ?> </span> </div> <div style="clear:both;"></div> <?php for ($i=0;$i<=$segetir[0];$i++){ $i = $sonuc; $toplam = $toplam + $i; } } } ?> <p><span style="float:right;margin-top:30px;margin-right:115px;"> <b>Genel Toplam Fiyat : </b> <span style="font-size:14px;color:red;"> <?php echo $toplam;?> TL </span><br> <input type="hidden" name="stoplam" value="<?php echo $toplam;?>"> <input type="hidden" name="musteri" value="<?php echo $Musteri;?>"> </span> </p> <div style="clear:both;"></div> </div> <a href="#"><img src="images/buying.png" alt="Satın Al" style="float:right;margin-right:5px;" onClick="javascript:siparis_form.submit()" /></a> </form> <?php if ($_POST){ $id = (int)mysql_real_escape_string($_POST['seid']); $skontrol = mysql_num_rows(mysql_query("select * from sepet where MusteriID = $Musteri and SeID = $id")); if ($skontrol<=0){ echo "<script>alert('Geçersiz ürün silmeye çalışıyorsunuz !');</script>"; }else{ mysql_query("delete from sepet where SeID = $id"); header("Location: sepet.php"); } } ?> <?php }else{ echo '<p style="padding:10px;">Sepete ürün ekleyebilmeniz için üye girişi yapmanız gerekir!</p>'; } ?> -
hocam name="id" yerine name="id[]" yaparsan düzelecektir diye düşünüyorum :/ Pekte anlamadım ama
-
ndmylmz bunu yazdı
hocam name="id" yerine name="id[]" yaparsan düzelecektir diye düşünüyorum :/ Pekte anlamadım ama
yok hocam sorun onlarda değilde post etmekte :(
-
ajaxla yapsan işlemlerini, herşeyi tek sayfada yapsan islem.php gibi ve buna gönderirken islem.php?a=sil&id=2 diye göndersen
islem.php içerisinde de switch case ile gelen veriyi anlayıp çözsen ?
-
Maresca bunu yazdı
ajaxla yapsan işlemlerini, herşeyi tek sayfada yapsan islem.php gibi ve buna gönderirken islem.php?a=sil&id=2 diye göndersen
islem.php içerisinde de switch case ile gelen veriyi anlayıp çözsen ?
hocam ajaxlada post ettircem sonuçta , postta sıkıntı vardı çözdüm valla.
sadece genel bi form yaptım 1 tane
<form name="genel_form" id="genel_form" method="post">
burda da sil döngüsü vardı ya onu da şöyle yaptım.
<input type="radio" name="sil[]" onClick="javascript:genel_form.submit()" value="<?php echo $silID;?>">
</form>
sonrada o sil adlı radioyuda kontrol ettirdim bu şekilde,
seçili değil yazısı olan yere eğer satın al kısmına tıklamışsa orda yapılan işlemleri yazıcam.eğer seçili ise foreach te aldığım değeri sqle bağlayıp sepetteki ürünü silicem.
<?php if ($_POST){ $sil = $_POST['sil']; if (!isset($sil =="")){ echo "seçili değil"; }else{ foreach ($sil as $silsepet){ echo $silsepet; } } ?>
