• 21-04-2025, 15:59:51
    #1
    Merhaba,
    Tablomda ürün fiyat sütunu DOUBLE, adet sütunu INT veri tipindedir.
    Aşağıdaki şekilde ürün fiyatı ve adetini çarparak sipariş toplamı almak istiyorum ama en sondaki
    $total += $uruntoplam;
    satırında Warning: A non-numeric value encountered in .... hatası alıyorum, nasıl yapmam gerekir, yardımcı olur musunuz?

     
    $orders = $db->prepare("SELECT sipariskodu,sipariskgtl FROM siparisler WHERE siparisuye=:b ORDER BY sipariskodu DESC LIMIT 1");
    $orders->execute([':b' => $usercode]);
    if($orders->rowCount()){
       $ordersrow = $orders->fetch(PDO::FETCH_OBJ);
       $sipariskodu = $ordersrow->sipariskodu;
       $kargoucreti = $ordersrow->sipariskgtl;
    }
    $shopping = $db->prepare("SELECT * FROM siparis_urunler WHERE sipkodu=:s");
       $shopping->execute([':s' => $sipariskodu]);
       $total = 0;
       foreach($shopping as $shop){
          print_r($shop['sipurunadi']. "-". $shop['sipbirim'] . "-" . $shop['sipadet'] . "-" . $uruntoplam = $shop['sipbirim'] * $shop['sipadet'] ."<br>");
          $total += $uruntoplam;
    }
  • 21-04-2025, 16:15:31
    #2
    ⭐️ Developer
    İkisini de doubleval() (diğer adıyla floatval) fonksiyonundan geçirip toplamayı deneyin
  • 21-04-2025, 16:23:28
    #3
    ErayEfe adlı üyeden alıntı: mesajı görüntüle
    İkisini de doubleval() (diğer adıyla floatval) fonksiyonundan geçirip toplamayı deneyin
    Denedim ama olmadı, ama üst tarafta $uruntoplam =0 verince sorun çözüldü gibi,
    İlgine teşekkür ederim.