Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] problem z transakcja
Forum PHP.pl > Forum > Przedszkole
spectron
Witam.

Mam funkcję (przepisaną z ksiązki winksmiley.jpg ) która powinna umieszczać zamówienie z koszyka sklepowego do bazy danych. Problem w tym ze nic nie zapisuje i jak sprawdzalem to funkcja konczy dzialanie w miejscu gdzie jest deklaracja daty i poniższe $zapytanie.

  1. <?php
  2. $lacz=lacz_bd();
  3. $lacz->autocommit(FALSE);
  4.  
  5. $zapytanie="select klient_id from klienci where imie='".$imie."' and nazwisko='".$nazwisko."' and adres='".$adres."' miasto='".$miasto."' and kod_poczt='".$kod_poczt."' and wojew='".$wojew."'";
  6.  $wynik=$lacz->query($zapytanie);
  7.  if($wynik->num_rows>0)
  8.  {
  9. $klient=$wynik->fetch_object();
  10. $idklienta=$klient->klient_id;
  11.  }
  12.  else
  13.  {
  14. $zapytanie="insert into klienci(imie,nazwisko,adres,miasto,kod_poczt,wojew,login,haslo,email) values('".$imie."','".$nazwisko."','".$adres."','".$miasto."','".$kod_poczt."','".$wojew."','".$login."','".$haslo1."','".$email."')";
  15. $wynik=$lacz->query($zapytanie);
  16. if(!$wynik)
  17.  return false;  
  18. }
  19. $idklienta=$lacz->insert_id;
  20.  
  21.  $data=date('Y-m-d H:i:s');
  22.  $zapytanie="insert into zamowienia(id_klienta,wartosc,data_zakupu,stan) values('".$idklienta."',".$_SESSION['calkowita_wartosc'].",'".$data."','przyjete'";
  23.  $wynik=$lacz->query($zapytanie);
  24.  if(!$wynik)
  25.  return false;
  26.  
  27. $zapytanie="select zamownie_id from zamowienia where id_klienta='".$idklienta."' and wartosc > ".$_SESSION['calkowita_wartosc']."-.001 and wartosc < ".$_SESSION['calkowita_wartosc']."+.001 and data_zakupu='".$data."' and stan='przyjete'";
  28. $wynik=$lacz->query($zapytanie);
  29. if($wynik->num_rows>0)
  30. {
  31.  $zamowienie=$wynik->fetch_object();
  32.  $z_zamowienie_id=$zamowienie->zamowienie_id;
  33. }
  34. else
  35.  return false;
  36.  
  37. foreach($_SESSION['koszyk'] as $art_id => $ilosc)
  38. {
  39.  $dane=pobierz_dane_art($art_id);
  40.  $zapytanie="delete from produkty_zamowione where z_zamowienie_id='".$z_zamowienie_id."' and z_art_id='".$art_id."'";
  41.  $wynik= $lacz->query($zapytanie);
  42.  $zapytanie="insert into produkty_zamowione values('".$z_zamowienie_id."','".$art_id."',".$dane['cena'].",".$ilosc.")";
  43.  $wynik=$lacz->query($zapytanie);
  44.  if(!$wynik)
  45. return false;
  46. }
  47. $lacz->commit();
  48. $lacz->autocommit(TRUE);
  49. ?>


Wszystko wywala mi sie chyba w tym miejscu...

  1. <?php
  2. $zapytanie="insert into klienci(imie,nazwisko,adres,miasto,kod_poczt,wojew,login,haslo,email) values('".$imie."','".$nazwisko."','".$adres."','".$miasto."','".$kod_poczt."','".$wojew."','".$login."','".$haslo1."','".$email."')";
  3. $wynik=$lacz->query($zapytanie);
  4. if(!$wynik)
  5.  return false;
  6. ?>


Widzi ktoś jakiś bląd?
Petermechanic
dlaczego nie ma kolumn w zapytaniu, które nagle pojawiają się w VALUES? Z tego co wiiem, to powinny być :|
spectron
a w którym miejscu?

jesli chodzi o te zapytania w petli foreach to tam nie musza byc wypisane kolumny do ktorych wpisuje




hehe juz sobie poradzilem tongue.gif dwie literowki: brakowalo ) w linii 22 i zjadlem kilka literek w "zamowienie_id"
hehe 2 dni szukania tak glupiego bledu... tongue.gif

pozdro
miska
w linii 5 tez masz błąd brakuje AND
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.