Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: podwójne zapytanie i obliczenie ważności wpisu
Forum PHP.pl > Forum > Bazy danych > MySQL
Apo
Witam

Mam stronke z ogłoszeniami. Każdy użytkownik systemu przynależy do danej grupy. Grupa ma zdefiniowane pole gdzie jest ilość dni po jakich ogłoszenie z tej grupy będzie w archiwum.
Dodatkowe są kategorie ogłoszeń w osobnej tabeli. No i cały problem polega na tym że muszę pobrać ogłoszenia, ich autorów oraz grupy do których przynależą i obliczyć kiedy ogłoszenie jest w archiwum. Następnie musze pobrać wszystkie ogłoszenia i sprawdzić które są już przeterminowane i muszą być w archiwum (czyli nie mogą być wyświetlane), jest to dla mnie troche pokęcone i sie gubie. Jak narazie napisałem takie coś:

  1. <?php
  2.  
  3. $stmt = $this->pdo->prepare('SELECT offers.time, ogloszenia_group.days AS days
  4. FROM offers, ogloszenia_group
  5. INNER JOIN users ON users.gid = ogloszenia_group.id
  6. WHERE users.id = offers.autor');
  7. $stmt->execute();
  8. $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
  9.  
  10. $czasDo = strtotime('+'.$rows[0]['days'].' days', $rows[0]['time']); // tu trzeba to zrobić na wszystkich ofertach z bazy które zostały pobrane wyżej
  11.  
  12. $stmt = $this->pdo->prepare('SELECT offers.id, offers.time, offers.city, ogloszenia_categories.name AS catego
    ry
  13. FROM offers, ogloszenia_categories
  14. WHERE ogloszenia_categories.id = offers.category
  15. AND offers.category NOT IN(2, 3)
  16. AND :timeto > :time'); // tu muszą zostać wybrane wszystkie rekordy które nie są 'przeterminowane'
  17. $stmt->bindParam('timeto', $czasDo);
  18. $stmt->bindParam('time', time());
  19. $stmt->execute();
  20. $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
  21. return $rows;
  22.  
  23. ?>

tabela ogloszenia_group - to grupy do których są poprzydzielani użytkownicy
Najlepiej by było połączyć te 2 zapytania ale nie wiem jak ...
Męcze sie z tym kilka dni i bez efektów ;(

Pozdrawiam Marek
nospor
po pierwsze: to nie ma zadnego zwiazku z php5
po drugie: to nie ma zwiazku wogole z php. Przeciez tobie chodzi o zapytania, wiec przenosze
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.