Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z wyświetleniem konkretnej ilości divów.
Forum PHP.pl > Forum > PHP
dominick
Witam ponownie,
Pojawił się kolejny problem w zmianach mojego projektu. Dokładnie chodzi o to, że teraz aby wyświetlić ogłoszenie promowane sprawdzane jest jedno wyrażenie i zachodzi pętla, aż to wyrażenie będzie nieprawdziwe. Poniżej to o czym pisze:
  1. <?php
  2. foreach ($announcements as $a):
  3. $announcement_link = announcements::url($a);
  4. ?>
  5. <li class="<?php
  6. if ($a->is_promoted()) {echo 'promoted';
  7.  
  8. }
  9. ?>
  10. ">

Jak widzicie działa to tak, że dodawana jest klasa promoted do <li> i dalej wyświetlana zawartość. Gdy warunek się nie spełni poprostu <li> jest bez klasy. Za żadne skarby nie mogę dojść do tego jak wyświetlić tylko 3 pozycje z klasą promoted. Najlepiej gdyby te 3 pozycje losowo się zmieniały gdy odświeżymy przeglądarke.
Próbowałem z pętlą jednak gdy warunek się spełni doda klasę poleci dalsza zawartość i od początku znowu mi przypisze wartość do zmiennej warunkowej pętli...

Jakieś pomysły, sugestie?
kalipek
Pomijając, że za logikę w aplikacji powinna odpowiadać warstwa logiki a nie widoku i to powinno być przygotowane wcześniej... i że nie widzę tam żadnych divów, o których piszesz w tytule...

  1. <?php
  2. $promotedArr = [];
  3. foreach ($announcements as $key => $value) {
  4. if($value->is_promoted())
  5. $promotedArr[] = $key;
  6. }
  7.  
  8. if(count($promotedArr) > 3)
  9. {
  10. shuffle($promotedArr);
  11. $promotedArr = array_slice($promotedArr, 0, 3);
  12. }
  13.  
  14. foreach ($announcements as $key => $value):
  15. $announcement_link = announcements::url($value);
  16. ?>
  17. <li class="<?php echo (in_array($key, $promotedArr)?'promoted':'') ?>">
dominick
Oczywiście nie divów a linów. Staram się nauczyć czegoś więcej niż podstawy. Poprzeczkę wystawiłem bardzo wysoko z tego co widzę. Analizuje kod cały czas i staram sie znaleźć błąd bo nie działa a wyrzuca błąd.

Opis błędu: Uncaught ReferenceError: $ is not defined .

Rozumiem, że któraś zmienna nie została zdeklarowana tak?
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.