Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML] Problem z tabelą
klapaucius
post
Post #1





Grupa: Zarejestrowani
Postów: 223
Pomógł: 3
Dołączył: 4.07.2009
Skąd: Kraków

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


Witam. Mam tak głupi problem, no ale nie mogę w żaden sposób go rozwiązać. Więc mam mniej więcej taki kod:
  1. <table>
  2. <tr>
  3.  
  4. while(){
  5. <td>
  6. echo "obrazek";
  7. </td>
  8. }
  9.  
  10. </tr>
  11. </table>

I tutaj chodzi o to ze w tabeli wyświetlają mi się obrazki za pomocą pętli. Wyświetla się np 20 obrazków. Problem tkwi w tym, że chce, aby w jednej linii zostało wyswietlonych np 5 obrazków i nastepnie przechodziło do nastepnej linii. Jednak tak sie nie dzieje: obrazków choćby było 100 to i tak wszystkie są w jednym rzędzie i niechcą zejść niżej. Jak temu zaradzić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Dziadzia
post
Post #2





Grupa: Zarejestrowani
Postów: 79
Pomógł: 4
Dołączył: 9.07.2009

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


zrób pętle for dodatkowo for (a=0; a<5; a++) {i tutaj dajesz resztę to co miałeś}
Go to the top of the page
+Quote Post
thek
post
Post #3





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Sam mu każesz ta robić i się jeszcze dziwisz... A zauważyłeś, że wszystkie obrazki to osobne komórki ładowane do JEDNEGO i TEGO SAMEGO wiersza? Musisz po określonej ilości komórek zamykać wiersz i rozpoczynać następny.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
Dziadzia
post
Post #4





Grupa: Zarejestrowani
Postów: 79
Pomógł: 4
Dołączył: 9.07.2009

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


  1.  
  2. $obrazek=6;
  3.  
  4. echo '<table border="2">
  5.  
  6. <tr>';
  7.  
  8. if ($obrazek>5) {
  9.  
  10. for ($a=0;$a<$obrazek;$a++){
  11.  
  12. echo '<td> obrazek;
  13.  
  14. </td>';
  15.  
  16. }
  17.  
  18. }
  19.  
  20. else {
  21.  
  22. echo '<td>echo obrazek</td>';
  23. }
  24.  
  25.  
  26. echo ' </tr>
  27.  
  28.  
  29. </table>';
  30.  



może to Ci nasunie jakiś pomysł smile.gif jak nie to pisz PW. pozdrawiam.
Go to the top of the page
+Quote Post
klapaucius
post
Post #5





Grupa: Zarejestrowani
Postów: 223
Pomógł: 3
Dołączył: 4.07.2009
Skąd: Kraków

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


Kurde siedze nad tym i siedze i mysle i za cholere nie moge tego pojąć. Przecież to jest tak proste a ja się tym tak męcze... Muszę z tym zrobić jeszcze dziś bo inaczej nie da mi to spokoju.
@edit
Dziadzia: nie kminie tego troche. Może jest jeszcze troche inny sposób? Zebym załapał bo na razie trudno mi z tym idzie. Może już przemęczony jestem bo od paru godzin kodzę ;/

Ten post edytował klapaucius 5.04.2010, 21:18:47
Go to the top of the page
+Quote Post
Daiquiri
post
Post #6





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




W "while" musisz dorzucić jeszcze mechanizm liczący obrazki. Jeżeli ich liczba dojdzie do 5 - tam ma nastąpić przejście do następnej linii/wiersza czy czego tam chcesz - dokładnie tak jak pisał Ci już Dziadzia. Ewentualnie zrobić to w jakikolwiek inny sposób, np.
  1. $i = 1;
  2. while() { //Twój while
  3. if ($i < 5) {
  4. //tutaj wyświetlą się 4 pierwsze obrazki
  5. } else {
  6. // tutaj wyświetli się 5 obrazek i np. znak nowej linii czy cokolwiek sobie życzysz
  7. $i = 1; //zerowanie licznika
  8. }
  9. ++$i;
  10. }


@Down
Problem można rozwiązać jakkolwiek, byleby prowadził do celu. Dałam inny przykład - może łatwiej będzie autorowi tematu zrozumieć.

Ten post edytował Daiquiri 5.04.2010, 22:00:07
Go to the top of the page
+Quote Post
Dziadzia
post
Post #7





Grupa: Zarejestrowani
Postów: 79
Pomógł: 4
Dołączył: 9.07.2009

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


Czy jest inny? Nie wiem, pewnie tak, bo zawsze jest kilka wyjść smile.gif ale zaraz napiszę moje tylko zajmie mi to jeszcze chwilkę tongue.gif
Go to the top of the page
+Quote Post
klapaucius
post
Post #8





Grupa: Zarejestrowani
Postów: 223
Pomógł: 3
Dołączył: 4.07.2009
Skąd: Kraków

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


Jeest chłopaki udało się! Zrobiłem podobnie jak pokazał Daiquiri. Teraz załapałem też o co biega u ciebie Dziadzia. Dzięki chłopaki za cierpliwość! Mam u Was dług!
Go to the top of the page
+Quote Post
Dziadzia
post
Post #9





Grupa: Zarejestrowani
Postów: 79
Pomógł: 4
Dołączył: 9.07.2009

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


  1. $obrazek=54; //ilość obrazków
  2.  
  3. echo '<table border="2">
  4.  
  5. <tr>';
  6.  
  7. $ilosc = $obrazek/5; // dzielenie ilości obrazków przez 5
  8.  
  9. $reszta=$ilosc-$ilosc%$obrazek; //zapisanie reszty z dzielenia do zmiennej
  10.  
  11. if ($reszta<0.4) {
  12.  
  13. $ilosc=$ilosc-$reszta; //zaookrąglamy w dół bo zmieści się w tabeli
  14.  
  15.  
  16.  
  17. for ($x=0;$x<$ilosc;$x++) // petla która tworzy ilość wierszy = $ilość
  18. {
  19. echo '<tr>';
  20.  
  21. for ($y=0;$y<5;$y++) // pętla która tworzy kolumny
  22. {
  23. echo '<td>brazek</td>'; //pokazanie obrazka
  24. }
  25.  
  26. echo '</tr>';
  27.  
  28. }
  29.  
  30. }
  31.  
  32. elseif (($reszta>=0.5) AND ($reszta<=0.9)) {
  33.  
  34. $ilosc+=1-$reszta;
  35.  
  36. for ($x=0;$x<$ilosc;$x++)
  37. {
  38. echo '<tr>';
  39.  
  40. for ($y=0;$y<5;$y++)
  41. {
  42. echo '<td>brazek</td>';
  43. }
  44.  
  45. echo '</tr>';
  46.  
  47. }
  48.  
  49. }
  50.  
  51.  
  52. echo ' </tr>
  53.  
  54.  
  55. </table>';
  56.  




sprawdzone i działa smile.gif jak będziesz mieć jakieś pytania to pisz już prywatne wiadomości, szkoda zaśmiecać forum smile.gif pozdrawiam.

Cytat(klapaucius @ 5.04.2010, 23:02:52 ) *
Jeest chłopaki udało się! Zrobiłem podobnie jak pokazał Daiquiri. Teraz załapałem też o co biega u ciebie Dziadzia. Dzięki chłopaki za cierpliwość! Mam u Was dług!



W tym samym czasie dodaliśmy wiadomość biggrin.gif no to masz 2 rozwiązania smile.gif jak pomogłem, daj proszę "pomógł"
Go to the top of the page
+Quote Post
klapaucius
post
Post #10





Grupa: Zarejestrowani
Postów: 223
Pomógł: 3
Dołączył: 4.07.2009
Skąd: Kraków

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


No właśnie, ale Twoja praca teraz nie poszła na marne bo teraz podpatrzyłem od ciebie trochę i zoptymalizowałem kod u mnie i przez to stał się nieco krótszy. Dzięki piękne za pomoc. Oczywiście leci "pomógł". Pozdrawiam!
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: 22.08.2025 - 01:51