Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CSS] wyświetlanie zawartości w 3 kolumnach
Forum PHP.pl > Forum > Przedszkole
gibonik
Chce zrobić wyswietlenie katalogow w 3 kolumnach przedzielonych linią.
Niestety informacje wyswietlane sa tylko w II kolumnach, wszystkie linki laduja w 1 kolumnie pod jeden pod drugi, w II kolumnie jest tylko jeden link.
i linia rysuje sie przy kazdym linku sad.gif
Ktoś może mi pomoc?

  1. {
  2. ....
  3. $index=$katalog.' - <a href="'.$url.'" title="'.$nazwa.'" target="'.$target.'">'.$nazwa.'</a><div style=" padding-bottom:5px; padding-left:3px;padding-right:3px; border-right:1px solid #E4EAF8; margin-bottom:3px; float: left; width:500px;min-height:50px;">';
  4. else $index=$katalog.' - '.$nazwa.'&nbsp;';
  5. $index=$index."\n";
  6. ...
  7. }
  8. $index='</div>';
masters1987
Po pierwsze ten kod jest mało czytelny, dałeś jakiś wycinek, nie wiadomo gdzie rozpoczyna się instrukcja if, gdzie koniec warunku, koniec wykonywanych instrukcji.
Po drugie do zmiennej $index przypisujesz za każdym razem nowy ciąg znaków.

gibonik
<div>
  1. <?
  2. $plik="katalogi.php";
  3. $plikS=fopen($plik,"w");
  4. $index='<div class="boxkatalog">';
  5.  
  6. $index='<div class="czcionka">';
  7. $index=$index."\n";
  8. fputs($plikS,$index);
  9.  
  10. $queryE=$dbh->query("SELECT katalog, url, nazwa FROM katalogi ORDER BY id");
  11. while($element=$queryE->fetchRow()){
  12. $katalog=stripslashes($element[0]);
  13. $url=$element[1];
  14. $nazwa=$element[2];
  15. $target='_parent';
  16. if(! empty($url))
  17. $index=$katalog.' - <a href="'.$url.'" title="'.$nazwa.'" target="'.$target.'">'.$nazwa.'</a><div style=" padding-bottom:5px; padding-left:3px;padding-right:3px; border-right:1px solid #E4EAF8; margin-bottom:3px; float: left; width:500px;min-height:50px;">';
  18. else $index=$katalog.' - '.$nazwa.'&nbsp;';
  19. $index=$index."\n";
  20. fputs($plikS,$index);
  21. }
  22. $index='</div>';
  23. $index=$index."\n";
  24. fputs($plikS,$index);
  25.  
  26. $index='</div>';
  27. $index=$index."\n";
  28. fputs($plikS,$index);
  29. $index='</div>';
  30. $index=$index."\n";
  31. fputs($plikS,$index);
  32.  
  33. fclose($plikS);
  34.  
  35. ?>
  36. </div>
  37.  
CuteOne
  1. $index="coś";
  2. $index="nic";
  3.  
  4. echo $index;
  5.  
  6. //sprawdź co wyświetli się na ekranie


1. Inicjalizacja zmiennej: $index='<div class="boxkatalog">';
2. Kolejna następna: $index .= 'coś coś coś';

  1. $index="coś";
  2. $index.="nic";
  3.  
  4. echo $index;
  5.  
  6. //sprawdź co wyświetli się na ekranie
gibonik
dane pobiera dobre, tylko mam problem z CSS,

[quote name='CuteOne' post='806580' date='12.11.2010, 08:50:55 ']
  1. $index="coś";
  2. $index="nic";
  3.  
  4. echo $index;
  5.  
  6. //sprawdź co wyświetli się na ekranie


nospor
Jakiś dziwny masz ten algorytm
Moze to ci pomoze:
http://nospor.pl/co-trzy-wyswietlanie-danych.html
gibonik
@nospor robilam wg Twoich wytycznych i wychodzi mi płot przy kazdym linku i mam jedna kolumne:(
pomocy
nospor
Przecież tam były gotowe kody, no jak można coś takiego zepsuć? Gotowe, przetestowane i działające kody - jedyne co trzeba zrobic to skopiowac, wkleic do siebie i wstawić swoje dane.
Pokaż co natworzyłaś.
gibonik
  1. <style>
  2. #bin div {
  3. float: left;
  4. }
  5.  
  6. .test {
  7. display: block;
  8. border: 1px solid black;
  9. border-bottom: 0.5px solid black;
  10. width: auto;
  11. height: auto;
  12.  
  13. }
  14. .x {
  15. clear: both;
  16. border-bottom: 1px solid black;
  17. }
  18. </style>



  1.  
  2. $index='<div id="bin">';
  3. $index='<div class="test">';
  4.  
  5. $max = 9;
  6. for ($index=1; $index <= $max; $index++) {
  7. echo $index.'<br/>';
  8.  
  9. $queryE=$dbh->query("SELECT tytul, url, nazwa FROM katalogi ORDER BY id");
  10. while($element=$queryE->fetchRow()){
  11. $katalog=stripslashes($element[0]);
  12. $url=$element[1];
  13. $nazwa=$element[2];
  14. $target='_parent';
  15.  
  16. if(! empty($url))
  17. if ($index % 3 == 0 && $index < $max) {
  18. $index=$katalog.' - <a href="'.$url.'" title="'.$nazwa.'" target="'.$target.'">'.$nazwa.'</a>
  19. </div><div class="test">';
  20. }
  21. else $index=$kaalog.' - '.$nazwa.'&nbsp;';
  22. $index=$index."\n";
  23. }
  24. fputs($plikS,$index);
  25. }
  26.  
  27. $index='</div>';
  28. $index=$index."\n";
  29. fputs($plikS,$index);
  30.  
  31. $index='</div>';
  32. $index=$index."\n";
  33. fputs($plikS,$index);
  34. $index='</div>';
  35. $index=$index."\n";
  36. fputs($plikS,$index);
  37.  
  38. fclose($plikS);
  39.  
  40. ?>
  41. </div>
  42. </div>
  43.  
CuteOne
czytać nie umiesz.... już pokazałem ci gdzie masz błąd a ty dalej swoje

  1. $index='<div id="bin">';
  2. $index='<div class="test">';
  3.  
  4. echo $index; //zwróci samo <div class="test">


  1. $index='<div id="bin">';
  2. $index.='<div class="test">';
  3.  
  4. echo $index; //zwróci <div id="bin"><div class="test">
gibonik
tak, ale to nic nie zmienia
echo'<div id="bin">';
echo'<div class="test">';
CuteOne
cały twój kod można o kant tyłka rozbić... dostałeś gotowca a nie potrafisz go wykorzystać

1. po co co 5 linijek robisz fputs?
2. "tak, ale to nic nie zmienia" ZMIENIA bo nadpisujesz w kółko tą samą zmienną
3. for($index questionmark.gif użyj INNYCH zmiennych np. $i, $c, $xyz a nie nadpisujesz ciągle jedną i tą samą

poczytaj jeszcze parę tutoriali bo kiepsko ci to idzie [nawet jak na nowicjusz]
gibonik
  1. $i = 0;
  2. $number = 3;
  3. $queryE=$dbh->query("SELECT katalog, url, nazwa FROM katalogi ORDER BY id");
  4. while($element=$queryE->fetchRow()){
  5. $katalog=stripslashes($element[0]);
  6. $url=$element[1];
  7. $nazwa=$element[2];
  8. $target='_parent';
  9. $index=$katalog.' - <a href="'.$url.'" title="'.$nazwa.'" target="'.$target.'">'.$nazwa.'</a><div style="float:left;border:1px solid black;width:150px;padding:5px;text-align:center;">';
  10. echo'</div>';
  11. if ($i % $number == $number -1){
  12. $echo='</div>';
  13. echo '<div style="clear:both;"></div>';
  14. }
  15. $i++;
  16. fputs($plikS,$index);
  17. }
  18.  
  19. echo '<div style="clear:both;"></div>';
  20. fclose($plikS);
  21.  
  22. ?>


teraz ramki sa w jednej kolumnie i nakładają sie na siebie sadsmiley02.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.