Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL]Zapytanie zależne od daty
Forum PHP.pl > Forum > Przedszkole
adrianozo
Mam problem z zapytaniem, które jest zależne od daty zapisanej w bazie.
Dostaje komunikat o treści: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '20:56:44' at line 1

KOD:

  1. $zapytanie1 = "SELECT * FROM `cms_sklep_historia` WHERE `klient` = ".$_SESSION['id']." ORDER BY `id` ASC";
  2. $idzapytania1 = mysql_query($zapytanie1) or die(mysql_error());
  3. while ($wiersz = mysql_fetch_array($idzapytania1))
  4. {
  5. $data = $wiersz['data'];
  6. echo '<b>Data:</b> '.$wiersz['data'].' <b>Status:</b> '.$wiersz['status'].'<br /><br />';
  7. $zapytanie2 = "SELECT * FROM `cms_sklep_historia` WHERE `data` = ".$data."";
  8. $idzapytania2 = mysql_query($zapytanie2) or die(mysql_error());
  9. while ($wiersz1 = mysql_fetch_array($idzapytania2))
  10. {
  11. echo '<b>Nazwa produktu:</b> '.$wiersz1['nazwa'].' <b>Cena:</b> '.$wiersz1['kwota'].'<br /><br />';
  12. }
  13. }


Chodzi o zapytanie2. W czym jest błąd?
vifus
Problem CHYBA leżał w pomieszanych cudzysłowach - sprawdź.

  1.  
  2. $ajdi=$_SESSION['id'];
  3.  
  4. $zapytanie1 = "SELECT * FROM `cms_sklep_historia` WHERE `klient` = '$ajdi' ORDER BY `id` ASC";
  5. $idzapytania1 = mysql_query($zapytanie1) or die(mysql_error());
  6. while ($wiersz = mysql_fetch_array($idzapytania1))
  7. {
  8. $data = $wiersz['data'];
  9. echo '<b>Data:</b> '.$wiersz['data'].' <b>Status:</b> '.$wiersz['status'].'<br /><br />';
  10. $zapytanie2 = "SELECT * FROM `cms_sklep_historia` WHERE `data` = '$data' ";
  11. $idzapytania2 = mysql_query($zapytanie2) or die(mysql_error());
  12. while ($wiersz1 = mysql_fetch_array($idzapytania2))
  13. {
  14. echo '<b>Nazwa produktu:</b> '.$wiersz1['nazwa'].' <b>Cena:</b> '.$wiersz1['kwota'].'<br /><br />';
  15. }
  16. }
adrianozo
Pomógł leci bo pomogło tylko mam teraz problem:
W tabeli tej trzymam dane w taki sposób:

Kod
(43, 'Nazwa', '2012-06-18 18:56:44', 13, 5, 'Z??o??one'),
(42, 'Nazwa', '2012-06-18 18:56:44', 13, 0, 'Z??o??one');


Jak widać jest tutaj identyczna data bo to jest jedno zamówienia a z zapytania

  1. $zapytanie1 = "SELECT * FROM `cms_sklep_historia` WHERE `klient` = '".$_SESSION['id']."' ORDER BY `id` ASC";
  2. $idzapytania1 = mysql_query($zapytanie1) or die(mysql_error());


otrzymuje:

Data: 2012-06-18 20:56:44 Status: Złożone

Nazwa produktu: Nazwa Cena: 5

Nazwa produktu: Nazwa Cena: 0

Data: 2012-06-18 20:56:44 Status: Złożone

Nazwa produktu: Nazwa Cena: 5

Nazwa produktu: Nazwa Cena: 0

Dwa razy to samo, a ma być jedno bo to jedno zamówienie
vifus
chyba o to chodzi:

  1. $zapytanie1 = "SELECT * FROM `cms_sklep_historia` WHERE `klient` = '".$_SESSION['id']."' ORDER BY `id` ASC LIMIT 1";
  2. $idzapytania1 = mysql_query($zapytanie1) or die(mysql_error());
adrianozo
Nie o to. Gdy mam dwie różne daty to powinny być dwa wyniki, a gdy jedna data to jeden wynik

OK mam:

  1. $zapytanie1 = "SELECT DISTINCT `data`, `status` FROM `cms_sklep_historia` WHERE `klient` = '".$_SESSION['id']."' ORDER BY `id` ASC ";
  2. $idzapytania1 = mysql_query($zapytanie1) or die(mysql_error());
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.