Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wyśietlanie fragmentu kodu określoną ilość r
Forum PHP.pl > Forum > PHP
z-x
  1. <?php
  2.  
  3. for ($i=0;$i<=mysql_insert_id($resource);$i++) { 
  4. echo &#092;"tekst\" . $i; 
  5. }
  6.  
  7. ?>


Chodzi o to, że mam tabelke (<table>) w której tym właśnie sposobem wyświetlam po cyfry, po jednej w każdym <td>. I tu się pojawia kłopot. Kiedy takich <td>-ków robi się 50 nie mieszczą się na stronie, więc musze przejść do następnego <tr>. Trochę to zawiłe, ale nie wiem jak to lepiej wytłumaczyć. Nie mam pomysłu na napisanie skryptu, który wyświetlałby te kolejne cyfry w td, a dochodząc do 50 przechodziłby na następne <tr>.
kszychu
O to chodziło?
  1. <?php
  2. $ile_w_linii = 50;
  3. for ($i=0;$i<=mysql_insert_id($resource);$i++) { 
  4. echo &#092;"<tr>\";
  5. for($i = 0; $j < $ile_w_linii; $j++, $i++) {
  6. echo &#092;"<td>tekst\" . $i.\"</td>\";
  7. }
  8. echo &#092;"</tr>\"; 
  9. }
  10.  
  11. ?>
yavaho
moze tak
  1. <?php
  2.  
  3. echo('<table>');
  4. echo('<tr>');
  5.  
  6. $td=0;
  7. $tdmax=50;
  8.  
  9. for ($i=0;$i<=mysql_insert_id($resource);$i++) {
  10.  
  11. if ($td == $tdmax) {
  12.  echo('</tr><tr>');
  13.  $td=0;
  14. } 
  15.  
  16. echo ('<td>tekst' . $i.'</td>'); 
  17. $td=$td+1;
  18. }
  19.  
  20. echo('</tr>');
  21. echo('</table>');
  22.  
  23. ?>
kicaj
Ja bym proponowal zastosowac modulo '%'
z-x
Dziękie wielke yavaho smile.gif I reszcie też za pomoc...

Update: Chyba się za bardzo pospieszyłem - w obu przypadkach nie rozumiem jak to działa. Moglibyście napisać tak przekładając komendy z php na polski?
yavaho
To jest zbyt proste aby tlumaczyc.

A wiec tak:
1)
Do twojej petli for{...} dolozylem jedna zmienna $td
Przed petla zmienna $td ma ustawiona wartosc =0
Po kazdym wykonaniu petli wartosc zmiennej jest zwiekszana o 1
$td=$td+1;

2)
Do twojej petli for{...} dolozylem sprawdzenie czy zmienna $td osiagnela maksymalna wartosc
if ($td == $tdmax) ($tdmax w tym przypadku to jest maksymalna ilosc kolumn)
A wiec jezeli $td = 50 to konczymy wiersz w tabeli i zaczynamy nowy
echo('</tr><tr>');
i zmiennej $td przypisujemy wartosc 0
$td=0;
z-x
Tak, sorry już rozumiem - dzięki, działa, ale w ramach tego doszedłem trochę dalej i też nie mogę sobie poradzić :/

Chodzi o coś takiego, że skrypt pobiera ostatni id z bazy danych, potem wyświetla obrazek tą ilość razy - jak dotąd bez problemu dzięki waszej pomocy, ale chcę, żeby skrypt wyświetlał obrazek każdy w innym <td> (5 obrazków w linii). Dotąd doszedłem sam. Dalej - jeśli obrazka nie byłoby w folderze nowplaying/ nie wyświetlałoby się nic.

Może w końcu bym do tego doszedł, ale już nie wyrabiam, wszystko mi się miesza... :/ Ide na spacer ;P
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.