Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Połączenie dwóch funkcji
Forum PHP.pl > Forum > Przedszkole
tomaszowiaktv
Mam w swojej bazie danych produkty, z których niektóre mają nadany checkboxem parametr o nazwie slider.

Posiadam dwie funkcje z których pierwsza wyświetla na ekranie jeden losowy produkt z bazy danych.

Druga funkcja wyświetla wszystkie produkty z nadanym parametrem slider.

Chciałbym zrobić taką funkcję, która by wyświetlała na ekranie jeden losowy produkt z nadanym parametrem.

Funkcja wyświetlająca losowy produkt:

  1. public function throwRandProduct( ){
  2. global $lang, $config;
  3.  
  4. $oFile = Files::getInstance( );
  5. if( isset( $this->aProducts ) ){
  6. foreach( $this->aProducts as $iProduct => $aProduct ){
  7. $aProducts[] = $iProduct;
  8. }
  9.  
  10. $aData = $this->aProducts[$aProducts[rand( 0, count( $aProducts ) - 1 )]];
  11.  
  12. //wyświetlanie produktu
  13. }
  14. }



Funkcja wyświetlająca wszystkie produkty z nadanym parametrem slider

  1. public function listProductsSlider( ){
  2. global $lang, $config;
  3.  
  4. $oPage = Pages::getInstance( );
  5. $oFile = Files::getInstance( );
  6. $content = null;
  7.  
  8. if( isset( $this->aProducts ) ){
  9. $i = 0;
  10. $sBasketPage = ( !empty( $config['basket_page'] ) && isset( $oPage->aPages[$config['basket_page']] ) ) ? $oPage->aPages[$config['basket_page']]['sLinkName'] : null;
  11. foreach( $this->aProducts as $iProduct => $aData ){
  12. if( isset( $aData['iSlider'] ) && $aData['iSlider'] == 1 ){
  13.  
  14.  
  15. //wyświetlanie produktu
  16.  
  17. }
  18. }
  19. }
  20. }


Obecnie mam coś takiego, ta funkcja wyświetla losowy produkt gdy natrafi na taki który ma nadany parametr slider, a gdy wylosuje produkt który tego parametru nie ma po prostu nic nie wyświetla.

  1. public function throwRandProduct( ){
  2. global $lang, $config;
  3.  
  4. $oFile = Files::getInstance( );
  5. $oPage = Pages::getInstance( );
  6.  
  7.  
  8. if( isset( $this->aProducts ) ){
  9. $i = 0;
  10. foreach( $this->aProducts as $iProduct => $aProduct ){
  11. $aProducts[] = $iProduct;
  12. }
  13.  
  14. $aData = $this->aProducts[$aProducts[rand( 0, count( $aProducts ) - 1 )]];
  15.  
  16. if( isset( $aData['iSlider'] ) && $aData['iSlider'] == 1 ){
  17.  
  18.  
  19. //wyświetlanie produku
  20.  
  21. }
  22. }
  23. }


Należy zmodyfikować tą ostatnią funkcję, tak aby najpierw wybrała wszystkie produkty z parametrem slider, a potem wyświetliła jeden losowy. Dzięki za pomoc z góry.
Wazniak96
I oczekujesz na gotowa? Śmieszny jesteś... Zapraszamy do działu oferty smile.gif

Ps: jeśli szukasz pomocy:
  1. do
  2. {
  3. //...
  4. }
  5. while();

We while negacja warunku z if a w pętli losowanie nowego produktu.
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.