AndMex adlı üyeden alıntı: mesajı görüntüle
Evet hocam aşağıdakini farketmemişim ancak hala sorun devam ediyor daha doğrusu ilk işlemi yine 40 TL olarak gönderiyor 20 göndermesi gerekirken, ancak 2. de farklı bir onay = 0 olmadığı için onu doğru gönderiyor. Hepsini doğru göndermesini nasıl sağlayabilirim?
Yukarı satırı kontrol etmemiştim. heheheh iki iş aynı anda olursa hata oluyor. şimdi algoritmana bakalım.;


$send_wpiban = $rs2['send_wpiban'];
$ttutar = $rs2['tutar'];
$tid = $rs2['id'];
}

burada öncelikle tümünü çekiyorsun. ve en sona atadığın işlemdeki tutar kalıyor. şöyle düşünebilirsin 500 satır varsa en sonra tutar ne ise o kalıyor. burayı tamamlıyorsun.
sonra tekrar bağlantı atıyorsun (buda yanlış) $baglanti = new PDO // zaten var olan bir pdo var üstten görülen tekrar açıyorsun. sonra işlemerin içinden;
$query = $db->prepare("UPDATE users SET balance = balance + :ttutar WHERE wpiban = :wpiban"); yapıyorsun. bu durumda en sondaki ile işlemlerin tekrar birleşiyor fazla rakam yazıyor.

bu sistemi komple değiştirmen lazım;
while($rs2 = $statement2->fetch()){
$send_wpiban = $rs2['send_wpiban'];
$ttutar = $rs2['tutar'];
$tid = $rs2['id'];
}

işlemlerini bu while içine al.
kısaca onay 0 olanları buldun -> user balanceler update ettin, ödeme onayını 1 ' e çektin işlemin bitti bu kadar.

buda biraz sıkıntılı olur 5000 işlem varsa, tek tek sorgu salla düzeltsin geri gelsin vs. normalde bunları array içine topla tek seferde ver derim ama oda biraz daha karmaşıklaştırır şuan için bu şekilde devam etmen daha sağlıklı.