Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Gelen Her Değer İçin Yeni Bir MySQL Sorgusu

Öncelikle Merhaba Benim Bir HTML formum var ve güncelle.php ye değer gönderiyorum
<td class=\"adet\"><input type=\"text\" value=\"$urun_adet\" name=\"adet[]\" /></td>
													<input type=\"hidden\" id=\"$sepet_id\" value=\"$sepet_id\" name=\"id[]\" />
													<input type=\"hidden\" id=\"$urun_fiyat\" value=\"$urun_fiyat\" name=\"fiyat[]\" />


Daha Sonrada PHP tarafında formu bu kodlarla karşılıyorum

<?php
include ("baglanti.php");
$id = implode($_POST['id'],', '); 
$adet = implode($_POST['adet'],', '); 
$fiyat = implode($_POST['fiyat'],', ');
$toplam = $fiyat * $adet; 

mysql_query("UPDATE sepet SET urun_adet='$adet' ,toplam='$toplam' WHERE sepet_id='$id'");
?>


Asıl Sorun Burada Başlıyor Buradaki update sorgusunda sadece gelen ilk id değeri güncelleniyor
diğer gelen değerlerde herhangi bir güncelleme olmuyor , Sorum : Geriye kalan diğer id değerlerini nasıl güncelletiriz nasıl bir döngü yazmamız gerekir yoksa döngüsüz halledilebilirmi
  • for ile artırarak ! tam anlamadım ama sorunu...
    spanker 9 yıl önce yazdı
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • Kesali adlı üyenin fotoğrafı
    9 yıl önce yazılmış
    208 cevap - 2 soru
    Foreach döngüsü kullanman lazım. Ayrıca ordaki implode komutu hatalı. Gelen veriler array() yapısında ikin sen onları birleştiriyorsun.

    Örnek php kodu

    foreach($_POST['id'] AS $post) {
    
    mysql_query("UPDATE sepet SET urun_adet='$post['adet']' ,toplam='$post['toplam']' WHERE sepet_id='$post['id']'"); 
    }
    


    NOT: Yukardaki kod örnek olması için yazılmıştır. Kendinize göre revize etmelisiniz.

Cevaplar

Hiç cevap bulunamadı.