Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dwa oddzielne dokumenty w jednym pliku
Forum PHP.pl > Forum > Po stronie przeglądarki
mm87
Witam,

jakiś czas temu stworzyłem własną bibliotekę obiektową do php. Ogólnie jestem z niej zadowolony tylko, że od samego początku jest jeden problem z którym nie mogę sobie dać rady. Mianowicie biblioteka została wyposażona w specjalny moduł który zgłasza błędy i uwagi dotyczące wykonania kodu. Te informacje wyświetlane są tylko w trybie testowania. I wygląda to mniej więcej tak że do przeglądarki dolatują 2 kody html strony.
  1. <htm>
  2. </html>
  3. jakieś style
  4. </head>
  5. Błędy, uwagi itd
  6. </body>
  7. </html>
  8. <htm>
  9. </html>
  10.  
  11. Właściwa strona
  12. jakieś style
  13. </head>
  14.  
  15. </body>
  16. </html>
  17.  

I wszystko z grubsza działa ok tylko, że np: Firefox koloruje to wszystko na czerwono(kod)

Czy jest jakiś sposób by logicznie oddzielić te dwa kody, tak aby to było poprawnie interpretowane przez przeglądarkę?
timon27
Tak - zrobić to po prostu zgodnie ze specyfikacją, czyli kod błędów umieścić bez headów itp w ciele dokumentu.
Sephirus
Możesz użyć do tego Buforowania Wyjścia w PHP. Ja osobiście z tego korzystam w trybie DEV w moich apkach do raportowania wyjątków.

Jeśli chcesz zobaczyć same info co do błędu to możesz to ogarnąć tak:

  1. // start kodu
  2.  
  3. ob_start(); // startujemy buforowanie wyjścia
  4.  
  5.  
  6. // kod poprawny
  7.  
  8. ob_flush(); // na samym końcu dajemy wyplucie tego co było w buforze
  9.  
  10.  
  11. /* nie wiem jak masz zrobioną obsługę tych błędów - możesz to mieć na końcu lub jako jakiś handler - tak czy owak w danym miejscu gdzie są błedy i musisz je wyświetlić robisz tak: */
  12.  
  13. ob_end_clean(); // czyścisz i zamykasz bufor (tracisz wszystko co w nim było)
  14.  
  15. // tu wyświetlasz normalnie templatkę z błędami
  16.  
  17.  


i tyle.

Jeśli natomiast zależy Ci na tym by błędy były widoczne tak jak i strona to wrzuć wypluwanie błędów przed </BODY> w formie jakiegoś DIV'a na przykład, który będzie miał pozycjonowanie fixed i przyklei się do samego dołu przeglądarki - to dość praktyczne wink.gif

Good Luck!
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.