Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Powtarzanie sie w pętli tej samej liczby miniatur- galeria, Problem z pętlą php
zibihehe
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 16.08.2009

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


Witam, mecze się już dłuższy czas z tym problemem i chodź mimo dużych chęci chyba nie dam rady, tak więc proszę mocno o pomoc. Próbuje stworzyć galerie w php i stanąłem nad problem jak zrobić aby systematycznie powtarzały mi się miniatury zdjęć po 3. Próbowałem utworzyć dwie pętle pierwsza miała za zadanie powtarzanie co 3 miniatury druga zaś służyła do kolejnego odtwarzania zmiennych z bazy(zaznaczam że robię to na plikach txt). Niestety plan spalił na panewce ponieważ w jednym rzędzie 3 miniatur wyświetla mi się ta sama miniatura (zmienna). Kombinuje i nic mi nie wychodzi- proszę o pomoc.

  1. <?php
  2. $plik = "db.txt";
  3. $dane = file($plik);
  4. for($i=0;$i<count($dane);$i++) {
  5. list($tytul[$i], $nazwa[$i], $tresc[$i], $foto1[$i], $foto2[$i], $foto3[$i], $foto4[$i], $foto5[$i]) = explode(" || ", $dane[$i]);
  6.  
  7.  
  8. $zdjecie = '<a title="przejdz do produktu" href="'.$foto1[$i].'"><img border="2" src="http://www.v-viola.pl/testy/miniatury/"'.$foto1[$i].' width="150" height="120"/></a>';
  9. for($j=1;$j<=3;$j++)
  10. echo $zdjecie;
  11. echo "<br />";
  12. }
  13. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
MateuszS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


ja robie cos takiego. dostosuj sobie

  1. <?
  2. //zapytanie tu $query=mysql_query...
  3. echo '<table>';
  4. while($assoc = mysql_fetch_assoc($query_prod_cat)) {
  5. if ($i=='0') {
  6. echo "<tr>";
  7. }
  8. $i++;
  9.  
  10. echo '<td cellpadding="0" width="120"><img style="border: 3px solid #5F7791; src="'.$assoc['sciezka'].'" /></a></td>';
  11. if ($i>='3') {
  12. echo "</tr>";
  13. $i=0;
  14. }
  15. }
  16.  
  17. if($i=='1'){ echo "<td></td><td></td><td></td><td></td></tr>"; } if($i=='2'){ echo "<td></td><td></td><td></td></tr>"; }
  18. echo '</table>';
  19.  
  20. ?>


--------------------
O! Zimniok :P
Go to the top of the page
+Quote Post
zibihehe
post
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 16.08.2009

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


Hmm, w sumie warunków też próbowałem ale tak jeszcze nie- chyba najlepsze wyjście- dzięki.

Ten post edytował zibihehe 8.10.2009, 20:42:38
Go to the top of the page
+Quote Post
zelu
post
Post #4





Grupa: Zarejestrowani
Postów: 229
Pomógł: 34
Dołączył: 7.12.2008
Skąd: Poznań

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


Musi tak być, że 3 razy wyświetla się to samo zdjęcie. W każdym kroku "dużej" pętli tworzysz zmienną zdjęcie, następnie w "małej" pętli wyświetlasz tę zmienną 3x.

Sprawdź jak zadziała
  1. $i%3
i dostosuj sobie skrypt winksmiley.jpg

Pozdrawiam
Go to the top of the page
+Quote Post
zibihehe
post
Post #5





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 16.08.2009

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


hmm- kurcze, niestety wyświetla po dwa i każda dwójka ma te samą zmienną :/ A chodzi mi oto aby miniatury były wyświetlane po 3 w rzędach i każda z nich była inna.

Ten post edytował zibihehe 8.10.2009, 21:00:48
Go to the top of the page
+Quote Post
zelu
post
Post #6





Grupa: Zarejestrowani
Postów: 229
Pomógł: 34
Dołączył: 7.12.2008
Skąd: Poznań

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


W każdym przebiegu pętli generujesz sobie nowe zdjęcie. Z nowym adresem, id, czy co tam jeszcze chcesz i wyświetlasz to zdjęcie przez echo. Następnie robisz

  1. if( !$i%3 )
  2. echo "<br />";


I powinno działać tak jak chcesz winksmiley.jpg

pzdr
Go to the top of the page
+Quote Post

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 Aktualny czas: 21.08.2025 - 16:12