str_to_date funkcja nie działa w complexe zapytań mysql Joomla

głosy
-3

Mam czarownicą zapytań SQL zwraca 3 najnowsze formacje, ale does'nt pracę po tym, jak zmieniły fin_date typ kolumny z łańcucha na bieżąco z określonym formacie:

   $today = JFactory::getDate()->toFormat('%d/%m/%Y');
   // echo $today==> 18/12/2018

$query =  SELECT p.fin_date, pfr.product_name, p.ville
             . FROM #__virtuemart_products as p
             . LEFT JOIN #__virtuemart_products_fr_fr as pfr on pfr.virtuemart_product_id = p.virtuemart_product_id
             . WHERE p.published = 1   AND  p.product_parent_id != 0 AND str_to_date(p.fin_date,'%d/%m/%Y') >= $today 
             . LIMIT 4 
             ;

nawet ja go zmienić na:

$query =  SELECT str_to_date(p.fin_date,'%d/%m/%Y'), pfr.product_name, p.ville
             . FROM #__virtuemart_products as p
             . LEFT JOIN #__virtuemart_products_fr_fr as pfr on pfr.virtuemart_product_id = p.virtuemart_product_id
             . WHERE p.published = 1   AND  p.product_parent_id != 0 AND str_to_date(p.fin_date,'%d/%m/%Y') >= $today 
             . LIMIT 4 
             ;
Utwórz 18/12/2018 o 11:12
źródło użytkownik
W innych językach...                            


1 odpowiedzi

głosy
1

Nie można porównywać datę (Wyjście str_to_date), który będzie w Y-m-dformacie wewnętrznie, aby ciąg znaków w d/m/Ypliku PDF. Trzeba albo utworzyć $todayzmienną w Y-m-dformacie za pomocą

$today = JFactory::getDate()->toFormat('%Y-%m-%d');

lub przekształcić go wewnątrz IE zapytania

str_to_date(p.fin_date,'%d/%m/%Y') >= str_to_date($today,'%d/%m/%Y')
Odpowiedział 18/12/2018 o 11:59
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more