Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] formularz do szybkich zakupów
Forum PHP.pl > Forum > Przedszkole
lukasz_web
Witam,

W sklepie internetowym tworze formularz do szybkich zakupów: [Numer katalogowy] [ilość] <- inputy powielam sobie po przez jquery.

  1.  
  2. foreach($_POST['products_model'] as $products_model) {
  3.  
  4. $thulequery="SELECT products_id FROM products WHERE products_model = '{$products_model}' ";
  5. $thule_products_id_query = mysql_query($thulequery) or die(mysql_error());
  6. $thule_products_id = mysql_result($thule_products_id_query,0);
  7.  
  8.  
  9.  
  10. foreach($_POST['quantity'] as $ilosc_p) {
  11.  
  12.  
  13. $thulequery2="SELECT $ilosc_p FROM products WHERE products_model = '{$products_model}' ";
  14. $thule_products_id_query2 = mysql_query($thulequery2) or die(mysql_error());
  15. $thule_products_id2 = mysql_result($thule_products_id_query2,0);
  16.  
  17.  
  18. $cart->add_cart($thule_products_id, $cart->get_quantity($thule_products_id)+$thule_products_id2);
  19.  
  20. }
  21. }



Problem polega na tym że jak dodam taki input:
[nr. kat][ilość]
[0001][2]
[0002][4]

Do koszyka mi doda te dwa numery katalogowe ale ilości sumuje z inputów do pojedynczego numeru katalogowego w KOSZYKU:
[nr. kat][ilość]
[0001][6]
[0002][6]

A powinno dodać do numeru 0001 2 szt. a do numeru 0002 4szt.

b4rt3kk
Ilości te masz zapisane w bazie w momencie dodania, czy jak? W każdym razie, to zapytanie:

  1. $thulequery2="SELECT $ilosc_p FROM products WHERE products_model = '{$products_model}' ";


jest błędne, bo jeśli $ilosc_p jest liczbą (czyli integer), to zostanie zinterpretowane, np. w ten sposób:

  1. SELECT 5 FROM products


I wynikiem będzie liczba 5, a nie zawartość kolumny, np. quantity.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.