Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Podział wyciąganych rekordów na 2 wersy
Forum PHP.pl > Forum > Przedszkole
Gość_luk_*
Witam,
otóż tak, wyciągam z bazy 8 rekordów zapytaniem $sql="......blebleble... limit 8"
i dalej to wszystko zapętlam "while ($petla=mysql_fetch_array($sql))" i pod tym mam tabele 4 kolumny na 2 wersy, tyle że mój problem polega na tym iż wszystko wyświetla się w jednym wersie - 8 pod rząd wyciągniętych rekordów a ja chce to rożłożyć po 4 na wers, jak to podzielić questionmark.gif

Pomożecie ?
koobs
nie bvardzo wiem co chcesz uzyskac ale mozesz zrobic cos takiego:
  1. <?php
  2. ...
  3. $rowspan = 0
  4. while(...)
  5. {
  6. if ($rowspan > 3) print '<br />';
  7. $rowspan++;
  8.  ...
  9.  
  10. }
  11. ?>
Gość_luk_*
Cytat(koobs @ 23.07.2006, 08:02 ) *
nie bvardzo wiem co chcesz uzyskac ale mozesz zrobic cos takiego:
  1. <?php
  2. ...
  3. $rowspan = 0
  4. while(...)
  5. {
  6. if ($rowspan > 3) print '<br />';
  7. $rowspan++;
  8.  ...
  9.  
  10. }
  11. ?>


Dziękuję, ale chyba nie o to chodziło, rozpiszę to raz jeszcze.

Mam wyciągnięte 4 kolejne rekordy z bazy gdzie w zapytaniu daje limit na te 4 rekordy.

Poniżej mam tabelkę 2x2 (2 kolumny i 2 wersy i teraz jak te 4 rekordy wyciągnięte wpisać
w te 4 komórki (przypominam 2x2). Aktualnie pętla wpisuje mi 4 rekordy pod rząd w jednej lini,
a poniżej pozostają puste okienka tabeli.
koobs
moze lepiej bedzie jak umiescisz fragment kodu w ktorym wypisujesz wszystko do tabeli?
Kicok
Prymitywne, ale chyba o to ci biega:

  1. <?php
  2. $result = mysql_query('SELECT blabla...');
  3. $c = 0;
  4.  
  5. echo('<table><tr>');
  6. while($row = mysql_fetch_assoc($result))
  7. {
  8. echo('<td>'.$row['blabla'].'</td>');
  9.  
  10. $c++;
  11. if(($c % 2) == 0)
  12. echo('</tr><tr>');
  13. }
  14.  
  15. echo('</tr></table>');
  16. ?>
Gość
Cytat(koobs @ 23.07.2006, 09:05 ) *
moze lepiej bedzie jak umiescisz fragment kodu w ktorym wypisujesz wszystko do tabeli?

Robi się ;-)

  1. $sql = "SELECT * FROM $aktualnosci where aktywne='1' limit 8";
  2. $sql = mysql_db_query($nazwa_bazy,$sql);
  3. div align="center">
  4. <center>
  5. <table border="0" cellpadding="0" cellspacing="0" width="500" style="border: 1 solid #00CCFF">
  6. <tr>
  7. <td bgcolor="#00CCFF"><b><font color="#FFFFFF">Aktualności</font></b></td>
  8. </tr>
  9. <tr>
  10. <td>
  11. <div align="center">
  12. <table border="0" cellpadding="0" cellspacing="1" width="100%">
  13. <tr>
  14. <? 
  15. while ($zapytanie=mysql_fetch_array($sql))
  16. {
  17. <td width="25%" style="border: 1 solid #C0C0C0; padding: 1">
  18. <a href="?d=$id_akt">$tyt_akt</a></td>";
  19. } ?>
  20.  
  21. </tr>
  22. </table>
  23. </div>
  24.  
  25. </tr>
  26. </table>
  27. </center>
  28. </div>


I teraz w tym kawałku kodu wyświetli mi sie 8 komórek w jednej linii, a chciałbym
a by one wyświetliły się 2 rzędy po 4 komórki i tutaj tkwi moja zagadka.
dczerner
przykładowo:
  1. <?php
  2. $odebrane = mysql_query ("SELECT id,produkt,firma FROM produkt ORDER BY $sortuj LIMIT $start, $koniec");
  3. while ($dane=mysql_fetch_array($odebrane)){
  4. echo"<TR><TD>$dane[produkt]</TD><TD>$dane[firma]</TD>]";
  5. echo "</TR>n";
  6. }
  7. ?>

guitar.gif

Wydaje mi się że powinno zadziałać dry.gif
Gość
Cytat(dczerner @ 23.07.2006, 09:33 ) *
przykładowo:
  1. <?php
  2. $odebrane = mysql_query ("SELECT id,produkt,firma FROM produkt ORDER BY $sortuj LIMIT $start, $koniec");
  3. while ($dane=mysql_fetch_array($odebrane)){
  4. echo"<TR><TD>$dane[produkt]</TD><TD>$dane[firma]</TD>]";
  5. echo "</TR>n";
  6. }
  7. ?>

guitar.gif

Wydaje mi się że powinno zadziałać dry.gif


Oj niestety nie pomoże tutaj co mi podałeś jest poprostu jeden rekord z bazy w jednej linii a ma być ich kilka i maja być dynamicznie wyciągane z bazy w/g zapytania. Ale thx za chęci tongue.gif
Cysiaczek
  1. <? 
  2.  
  3. $i=0;
  4. while ($zapytanie=mysql_fetch_array($sql))
  5. {
  6. $i++;
  7. if ($i==5){print "<tr>";}
  8.  
  9. echo"<td width="25%" style="border: 1 solid #C0C0C0; padding: 1"><a href="?d=$id_akt">$tyt_akt</a></td>";
  10.  
  11. if ($i==5){print "</tr>";}
  12.  
  13. } ?>


Trochę łopatologiczne, ale powinno działać
Gość
Cytat(Cysiaczek @ 23.07.2006, 09:39 ) *
  1. <? 
  2.  
  3. $i=0;
  4. while ($zapytanie=mysql_fetch_array($sql))
  5. {
  6. $i++;
  7. if ($i==5){print "<tr>";}
  8.  
  9. echo"<td width="25%" style="border: 1 solid #C0C0C0; padding: 1"><a href="?d=$id_akt">$tyt_akt</a></td>";
  10.  
  11. if ($i==5){print "</tr>";}
  12.  
  13. } ?>


Trochę łopatologiczne, ale powinno działać


Łopatologia LIFE exclamation.gif! Dzięki Ci 'Cysiaczek' mała zmianka doszła gdyż w pierwszym warunku na
  1. <?php
  2. $i==1
  3. ?>
i już wszystko hula aż miło. Jeszcze raz dzia.

Soczek z żuczka dla Ciebie biggrin.gif
dczerner
Nie załapałem do końca Twojego problemu. Z kąd wzieło Ci się tam $id_akty i $tyt_akt a co z $zapytanie ?

Sposób cyciaczka podzieli tabelę na 5 kolumn.
Gość
Cytat(dczerner @ 23.07.2006, 09:51 ) *
Nie załapałem do końca Twojego problemu. Z kąd wzieło Ci się tam $id_akty i $tyt_akt a co z $zapytanie ?

Sposób cyciaczka podzieli tabelę na 5 kolumn.


Cysiaczek podał schematowo jak to zrobić, a nie konkretnie pod mój problem, oczywiście te zapytanie jak i inne pierdoły trzeba podłożyć pod swój kodzik smile.gif
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.