отакої - PHP Online

Form of PHP Sandbox

Enter Your PHP code here for testing/debugging in the Online PHP Sandbox. As in the usual PHP files, you can also add HTML, but do not forget to add the tag <?php in the places where the PHP script should be executed.



Your result can be seen below.

Result of php executing





Full code of отакої.php

  1. <?php
  2. //перевіряю чи взагалі є за що платити і тут може бути 0, списання браку
  3. $totalasumm = $db->query("SELECT SUM(order_cost) FROM `{$db_cart}` WHERE order_userid={$usr["id"]} && order_status='new' && order_cart=1 ")->fetchColumn();
  4.  
  5. if ($totalasumm >= 0) {
  6.         $shopcart = $db->query(" SELECT SUM(order_cost) as sum, COUNT(order_id) as items FROM `{$db_cart}` WHERE order_userid={$usr["id"]} && order_status='new' && order_cart=1 ")->fetch();
  7.         $items = $db->query(" SELECT * FROM `{$db_cart}` WHERE order_userid={$usr["id"]} && order_status='new' && order_cart=1 && order_count>0 ")->fetchAll();//ось тут по кожному окремому замовленню дістаю дані
  8.         $ids = "";
  9.  
  10.  
  11.         $shopcart["sum"] = clean_price($shopcart["sum"], $default = 0, true);
  12.  
  13.         foreach ($items as $v) {
  14.             $ids .= $v["order_id"]. ",";
  15.         }
  16.        
  17.         foreach ($items as $i) {//перевіряю чи є достатньо товару в наявності
  18.                 $good = $db->query("SELECT item_quantity FROM $db_market WHERE item_id=".$i["order_pid"]." LIMIT 1")->fetchColumn();
  19.                 if (($good - $i['order_count']) < 0)
  20.                 {
  21.                         cot_redirect(cot_url('cart', '', '', true));//якщо немає то вертаю юзера в кошик взад
  22.                 }
  23.         }
  24.        
  25.         //і ось тут є заковика
  26.         //Олі потрібно в ОДНЕ замовлення додавати однаковий товар і продавати його з різною ціною
  27.         //Раніше я ДО цього всього фільтрував залишки - якщо було товару меньш ніж замовлено воно не додавало до кошику
  28.         //а зараз в мене немає перевірки на те чи товар вже в кошику і я відповідно не можу перевірити чи його достатньо
  29.        
  30.        
  31.         //що треба тут зробити:
  32.         //в кожного товару в магазі $db_market є свій унікальний id
  33.         //в кожного товару що додано в кошик $db_cart є свій унікальний id - $i['order_id']
  34.         //але якщо це один і той же товар то поле $i['order_pid'] в нього однаковий - це product id з таблиці $db_market
  35.         //і треба тут дивитися суму $i['order_count'] для всіх $i['order_id'] в якхи однаковий $i['order_pid'] і потім вже
  36.         //брати з $db->query("SELECT item_quantity FROM $db_market WHERE .... скільки є там в залишку 
  37.         //і якщо сума $i['order_count'] більша то cot_redirect(cot_url('cart', '', '', true));//якщо немає то вертаю юзера в кошик взад
  38.        
  39.        
  40.         if ($shopcart["count"] >= 0) {
  41.                     if (
  42.                             $db->insert($db_cart_checkout, array(
  43.                                 "user_id" => $usr["id"],
  44.                                 "date" => time(),
  45.                                 "checkout_cost" => $shopcart["sum"],
  46.                                 "checkout_ids" => substr($ids, 0, -1)
  47.                             ))
  48.                     ) {
  49.                         $checkout_id = $db->lastInsertId();
  50.                         $options["code"] = $checkout_id;
  51.                         $options["redirect"] = cot_url("marketorders", "m=purchases");
  52.                         $options["desc"] = "Замовлення номер ".substr($ids, 0, -1);
  53.                
  54.                         cot_payments_create_order('shop', $shopcart["sum"], $options);
  55.                     }
  56.         }
  57. }
  58. else
  59. {
  60.         cot_redirect(cot_url('cart', '', '', true));
  61. }
File Description
  • отакої
  • PHP Code
  • 10 Oct-2021
  • 3.44 Kb
You can Share it: