Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Kod PHP tworzy przerwy
Forum PHP.pl > Forum > Przedszkole
martinii007
Po wpisaniu kodu PHP do załączonego HTMLa zostają stworzone przerwy na stronie. W jaki sposób ich się pozbyć ?
CSS jest wporządku, bo po usunięciu kodu PHP przed echo wszystko działa.
Kodowanie mam ustawione na UTF 8. W sumie starczy że zostawię przed echo zmienną "oferty" i przerwa się pojawia, gdy do zmiennej wpiszę np. 1 lub 2 to znika.

  1. $oferty = DatabaseManager::selectBySQL("SELECT * FROM home");
  2.  
  3. foreach($oferty as $article) {}
  4.  
  5. echo '
  6.  
  7. <div class="s">
  8. <div class="s1">
  9. <div class="s2">
  10. <div class="info2">
  11. '.$article['tytul'].'
  12. </div>
  13. <div class="left">
  14. <div class="mng">Przykładowe zdjęcia</div>
  15. <p class="center"><img src="images/img1.jpg" alt="" /></p>
  16. <p class="i">
  17. Apartamenty.
  18. </p>
  19. <p class="center"><img src="images/img2.jpg" alt="" /></p>
  20. <p class="i">
  21. Pokoje dla całej rodziny.
  22. </p>
  23. </div>
  24. <div class="right">
  25. <h1 >'.$article['podtekst'].'</h1>
  26. <p><a href="#">'.$article['tekst'].'</p>
  27.  
  28. <h1 >Reklamy</h1>
  29. <div id="gallery">
  30. <ul >
  31. <li><a href="galeria/1.jpg" target="_blank"><img src="galeria/m1.jpg" alt="" /></a></li>
  32. <li><a href="galeria/2.jpg" target="_blank"><img src="galeria/m2.jpg" alt="" /></a></li>
  33. <li><a href="galeria/3.jpg" target="_blank"><img src="galeria/m3.jpg" alt="" /></a></li>
  34. </ul>
  35. </div>
  36.  
  37.  
  38.  
  39. </div>';


fiszol
Zamień
Kod
echo '

na
Kod
echo "
CuteOne
Ciężko określić gdzie leży problem np. to może być kod HTML w $articles. Za pomocą Opery DragonFly sprawdź co jest nie tak

otwórz Operę -> Narzędzia -> Zaawansowane -> Opera DragonFly -> z menu wybierz Dokumenty i kliknij na pusty obszar lub poniżej jego -> z prawej strony ważki będziesz miał obliczone style css tam szukaj przyczyny problemu


EDIT: Fiszol do wyświetlania stringów (np. HTML) używa się apostrofów nie cudzysłowie

ps. Fiszol masz może konto na gamecenter.pl ?
franki01
Spojrzałeś w kod HTML już wygenerowanej strony, czy przed <div class="s"> nie znajduje się żadne <br /> albo coś zbędnego?
martinii007
No właśnie to jest najgorsze, że tam nic nie ma, a jak usunę $oferty to wszystko znowu gra. Wykorzystałem inny skrypt do "wyciągania" informacji z bazy danych i teraz już jest ok. Ale bardzo dziwny problem...
redeemer
Po pierwsze nie rozumiem tej konstrukcji
  1. foreach($oferty as $article) {}
To echo nie miało być w tej pętli? Po drugie jak usuwasz $oferty to nie ma się co wyświetlić i teraz: jeśli faktycznie to echo znajduje się w pętli foreach to nic się nie wyświetli (włącznie ze strukturą html). Jeśli natomiast jest poza nią (jak obecnie wygląda Twój kod) to do divów (np. class="info2") nic się nie wstawia i w tym wypadku, jeśli załóżmy, ta klasa ma atrybut line-height to nie zostanie on wzięty pod uwagę, gdy div jest pusty.
fiszol
Cytat(CuteOne @ 19.07.2012, 19:02:19 ) *
Ciężko określić gdzie leży problem np. to może być kod HTML w $articles. Za pomocą Opery DragonFly sprawdź co jest nie tak

otwórz Operę -> Narzędzia -> Zaawansowane -> Opera DragonFly -> z menu wybierz Dokumenty i kliknij na pusty obszar lub poniżej jego -> z prawej strony ważki będziesz miał obliczone style css tam szukaj przyczyny problemu


EDIT: Fiszol do wyświetlania stringów (np. HTML) używa się apostrofów nie cudzysłowie

ps. Fiszol masz może konto na gamecenter.pl ?

Ja wiem, czego się używa, tylko że w apostrofach wypluwasz wszystkie taby, breaki itd, a to potrafi czasem coś rozciągnąć.

Konto na gc mam.
redeemer
Cytat(fiszol @ 19.07.2012, 19:05:42 ) *
Ja wiem, czego się używa, tylko że w apostrofach wypluwasz wszystkie taby, breaki itd, a to potrafi czasem coś rozciągnąć.

Bzdura.

Edit: W sensie w cudzysłowiach też to "wypluwasz".
fiszol
  1. <?php
  2. echo " <div>
  3. </div>";
  4.  
  5. echo ' <div>
  6. </div>';
  7. ?>


  1. <div>
  2. </div> <div>
  3. </div>

?
redeemer
No i zobacz sobie kod źródłowy strony.

Edit: Zresztą:
  1. <?php
  2. $a = " <div>
  3. </div>";
  4.  
  5.  
  6. $b = ' <div>
  7. </div>';
  8.  
  9. var_dump(strcmp($a,$b));
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.