Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][PHP]Tabele
junkie
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.04.2010

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


Witam. Mam problem z wykonaniem pętli na tabelach.
Pobieram dane z mysql'q do tabeli i chcę aby aby w poziomie były kolejne 2 tabele z następnymi danymi. Jeśli w poziomie będą już 3 tabele, ma przeskoczyć do następnego wersu i rozpocząć od nowa, z następnymi danym do 3.
Poniżej przedstawiam obrazek jak to ma wyglądać:
http://i42.tinypic.com/2lid634.png

Jak dam 1 tabelę przez while to tworzą się następne ale tylko w pionie, a potrzebuję w pionie i poziomie:(
Go to the top of the page
+Quote Post
lukasz_matysek
post
Post #2





Grupa: Zarejestrowani
Postów: 33
Pomógł: 2
Dołączył: 25.03.2010

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


Jak rozumiem, każdy następny rekord z wyniku selecta ma Ci tworzyć nową tabelę.

Zastosuj dodatkową zmienną: $numer_tabeli

Schemat postępowania będziesz wtedy mieć taki (wybacz skrótową formę, ale myślę że taki opis wystarczy)


while (mysql_fetch_array){
$numer_tabeli++;

if( ($numer_tabeli % 3) == 0) //jezeli numer tabeli jest wielokrotnoscia liczby 3{
//tutaj kod odpowiedzialny za przejscie do nastepnej linijki
}else {
//wyswietl tabele obok}

}

Ten post edytował lukasz_matysek 23.04.2010, 18:21:25
Go to the top of the page
+Quote Post
junkie
post
Post #3





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.04.2010

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


Nie do końca rozumiem to co napisałeś(IMG:style_emoticons/default/sad.gif) .

Mam zapytanie $result=mysql_query("SELECT * FROM xxx WHERE xxx=xyx");
do tego pętla
while ($r=mysql_fetch_array($result))
{
/////////Tutaj jakies zmienne//////
echo"<table border=1>
<tr><td>$jakas_zmienna</td></tr>
</table>";
}

Aktualnie w taki sposób mam to zrobione i tabele rozwijają się w pionie, potrzebuję do tego dorobić przesunięcie w poziomie o 2 kolejne tabele.

Nie mam pomysłu gdzie miałbym zastosować tą zmienną $numer_tabeli.

P.S. Dzięki za zainteresowanie się tematem.
Go to the top of the page
+Quote Post
blooregard
post
Post #4


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Panowe, BBCode. (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
junkie
post
Post #5





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.04.2010

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


Aj tam BBCode:P Temat można zamknąć, dziękuję za pomoc lukasz_matysek.
Go to the top of the page
+Quote Post
lukasz_matysek
post
Post #6





Grupa: Zarejestrowani
Postów: 33
Pomógł: 2
Dołączył: 25.03.2010

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


Sprecyzowałem dokładnie w którym miejscu i jak powinieneś zastosować tą zmienną.

Wykorzystujesz: dzielenie modulo 3 (% 3) daje ci w wyniku 0, jeżeli dzielna jest wielokrotnością 3.

tabelki te umieszczasz w większej tabeli, takim "kontenerze" tabel - w nich się mieszczą po 3 tabelki poziome, na zasadzie:
  1. <tr>
  2.  
  3. <td><table> tutaj ta mniejsza tabelka</table></td>
  4. <td><table> tutaj ta mniejsza tabelka</table></td>
  5. <td><table> tutaj ta mniejsza tabelka</table></td>
  6.  
  7. </tr>


Kolejną tabelkę zewnętrzną generujesz, kiedy numer_tabeli % 3 == 0.

Jak oderwę się na chwilę od bieżącej roboty i nie zasnę na klawiaturze, to postaram się to napisać w kodzie.

Ten post edytował lukasz_matysek 23.04.2010, 20:06:49
Go to the top of the page
+Quote Post
junkie
post
Post #7





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.04.2010

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


Już sobie poradziłem. Dałem tak przed </table> wstawiając całość w główną tabelę.
Kod
if( ($numer_tabeli % 3) == 0)
{
echo "</tr><tr>";
}

Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 15.09.2025 - 07:09