Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] tabela w pętli foreach
Krismen
post 12.07.2010, 10:14:04
Post #1





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 5.02.2009

Ostrzeżenie: (0%)
-----


Witam, mam taki skrypt:

  1.  
  2. $tablica['owoce']=array('jabłka','gruszki','śliwki','banany');
  3. $tablica['warzywa']=array('seler','marchewka','pietruszka');
  4.  
  5. echo "<table>"; //tabela główna
  6.  
  7. foreach ($tablica as $kategorie => $wartosci)
  8. {
  9. echo "<tr><td><a href='?kategorie=$kategorie'> $kategorie </a><br></td></tr>";
  10.  
  11. foreach (array_values($wartosci) as $artykuly)
  12. {
  13.  
  14. if ($_GET['kategorie']==$kategorie)
  15. {
  16. echo "<table>"; // wstaw jedną tabelę
  17. echo "<tr><td> $artykuly </td></tr>"; //każdy artykuł w osobnej komórce tabeli
  18. echo "</table>"; //zakończ tabele
  19. }
  20. }
  21. }
  22.  
  23. echo "</table>";
  24.  


I teraz chcę żeby tabela która jest wewnątrz drugiej pętli foreach otwarła się tylko RAZ, później wyświetlenie wszystkich artykułów w osobnym wierszu (to jest ok) i zamknięcie tabeli też jeden RAZ. Podejrzewam, żę trzeba to zrobić warunkiem tylko nie wiem jakim... Ktoś pomoże ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Krismen
post 12.07.2010, 10:40:42
Post #2





Grupa: Zarejestrowani
Postów: 86
Pomógł: 0
Dołączył: 5.02.2009

Ostrzeżenie: (0%)
-----


Akurat dałem taki przykład, ale głównie chodziło o wykonywanie warunków wewnątrz pętli foreach, no bo załóżmy że chcemy żeby pierwszy i ostatni index z tablicy był wyświetlony na czerwono albo coś ma się wydarzyć co 3 index. Będę próbował tak jak mi to opisałeś, dzięki.
Go to the top of the page
+Quote Post
Wicepsik
post 12.07.2010, 10:57:43
Post #3





Grupa: Zarejestrowani
Postów: 1 575
Pomógł: 299
Dołączył: 26.03.2009

Ostrzeżenie: (20%)
X----


Cytat(Krismen @ 12.07.2010, 11:40:42 ) *
Akurat dałem taki przykład, ale głównie chodziło o wykonywanie warunków wewnątrz pętli foreach, no bo załóżmy że chcemy żeby pierwszy i ostatni index z tablicy był wyświetlony na czerwono albo coś ma się wydarzyć co 3 index. Będę próbował tak jak mi to opisałeś, dzięki.


  1. $tablica = array('cos1','cos2','cos3','cos4','cos5','cos6','cos7','cos8','cos9','cos10','cos11','cos12');
  2.  
  3. foreach(array_values($tablica) as $key=>$value){
  4. if( $key == 0 ){
  5. echo '<span style="color:orange;">Pierwszy element tablicy: '.$value.'</span><br/>';
  6. }
  7. else if( $key % 3 == 0 ){ //
  8. echo '<span style="color:red;">'.$value.'</span><br/>';
  9. }
  10. else if( $key == count($tablica)-1 ){
  11. echo '<span style="color:green;">Ostatni element tablicy: '.$value.'</span><br/>';
  12. }
  13. else
  14. echo $value.'<br/>';
  15. }


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 16:57