Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [XAMPP][PHP] Problem z wyświetlaniem strony
adus10
post 30.06.2013, 20:26:29
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.05.2013

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


Witam!
Używam XAMPP'a. Mam problem odnośnie wyświetlania strony. W HTML'u i CSS'ie jest wszystko OK. Problem jest gdy dołączam plik za pomocą include() w PHP. Na localhost jest źle wyświetlana strona przez Firefox'a, Google Chrome'a i Safari, natomiast, gdy odpalę ją przez Operę, Internet Explorer'a lub wrzucę ją na hosting to wszystko jest OK na wszystkich przeglądarkach. Nie wiem czy to przez złą interpretacje danych przez przeglądarki, może jakiś błąd w XAMPP'ie albo jakiś błąd w kodzie.
Kod include'owanie pliku
  1. <div id="side">
  2. <?php include($documentRoot.'/files/parts/side.php'); ?>
  3.  
  4. </div>


Kod side.php
  1. <article class="side_one">
  2. <header class="side_header"><h2 class="side_title">Przykładowy tytuł</h2></header>
  3. <div class="side_text">
  4. <p>Przykładowe Dane<br />Przykładowe Dane<br />Przykładowe Dane</p>
  5. </div>
  6. </article>


Screenshot błędu o którym mowa


A tu wszystko dobrze
Go to the top of the page
+Quote Post
gitbejbe
post 1.07.2013, 08:35:18
Post #2





Grupa: Zarejestrowani
Postów: 516
Pomógł: 63
Dołączył: 27.08.2012

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


co zamiera zmienna $documentRoot ?

jeśli pełną ścieżkę do pliku to się nie dziw, że nie działa

ścieżkę zaczynasz od dokumentu z projektem - czyli tam gdzie masz index.html/php . czyli jeśli w folderze z projektem plik do załączenia masz np w folderze o nazwie "inc" to ścieżka jaką należny wpisać w include będzie taka "inc/nazwa_pliku.php" <- ta wesja będzie działać lokalnie i na zewnętrznym serwerze

na serwerze chodzi bo założę się, że twoja zmienna $documentRoot pokazuje Twoją domenę, a lokalnie pełną ścieżkę z dysku, np : D:/xampp/htdocs/ itd

Ten post edytował gitbejbe 1.07.2013, 08:38:06
Go to the top of the page
+Quote Post
adus10
post 1.07.2013, 11:41:29
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.05.2013

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


  1. $documentRoot = $_SERVER['DOCUMENT_ROOT'];

Czy takie podawanie ścieżki do pliku jest niepoprawne? Powinienem to robić przez używanie ścieżek względnych?
Go to the top of the page
+Quote Post
gitbejbe
post 1.07.2013, 11:53:32
Post #4





Grupa: Zarejestrowani
Postów: 516
Pomógł: 63
Dołączył: 27.08.2012

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


$_SERVER['DOCUMENT_ROOT']

lokalnie zwróci tobie pełną ścieżkę do pliku - tak jak napisałem będzie to np: D:/xampp/htdocs itd - czyli błąd

jeśli chodzi o include to nie spotkałem sie jeszcze w żadnym projekcie aby ścieżki były podawane w sposób , który Ty zaprezentowałeś : )

idąc tym tokiem rozumowania to dla wskazania pliku CSS w sekcji head też powinieneś wstawić $_SERVER['DOCUMENT_ROOT'] ;p

ścieżka do pliku zaczyna się zawsze od pliku wykonawczego, więc jeśli odpalasz strone z index.html z katalogu głównego, to dla include zaczynasz ścieżkę zawsze od tego miejsca.
Wszyscy i wszędzie zawsze wpisują - jak to ująłeś, ścieżki względne : )
Go to the top of the page
+Quote Post
adus10
post 1.07.2013, 13:26:42
Post #5





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.05.2013

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


Zmieniłem kod na:
  1. include('/files/parts/side.php');

I dalej pokazuje się ten błąd. Myślę, że jest to wina przeglądarek (Firefox'a, Google Chrome'a i Safari).
Go to the top of the page
+Quote Post
gitbejbe
post 1.07.2013, 13:32:46
Post #6





Grupa: Zarejestrowani
Postów: 516
Pomógł: 63
Dołączył: 27.08.2012

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


pokaż błąd

nie wiem czy ten znak ma znaczenie(nie mam jak teraz tego sprawdzić), ale usuń / przed files, czyli include('files/parts/side.php'); (ja go nigdy nie wpisuje)
po za tym, include musi działać bez względu na przeglądarkę. Jeśli include nie działa, to źle po prostu wpisujesz ścieżkę


Ten post edytował gitbejbe 1.07.2013, 13:43:07
Go to the top of the page
+Quote Post
adus10
post 1.07.2013, 13:53:21
Post #7





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.05.2013

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


Ten błąd to tylko błąd wyświetlania, który pokazałem na obrazku, że panel boczny jest opuszczony lekko w dół.

Include działa, tzn. pokazuje się jego treść, ale w tych trzech ww. przeglądarkach include jest opuszczony lekko w dół. Usunąłem tego slash'a i dalej źle wyświetla. Dobra niech ten błąd zostanie. Ważne, że na hostingu dobrze na wszystkich przeglądarkach wyświetla.
Go to the top of the page
+Quote Post
gitbejbe
post 2.07.2013, 05:59:24
Post #8





Grupa: Zarejestrowani
Postów: 516
Pomógł: 63
Dołączył: 27.08.2012

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


ha ! no to już wsio wiadomo ; )

masz złe kodowanie pliku. zainstaluj sobie np notepad ++ i utwórz dokument php z kodowaniem UTF-8 BEZ BOM - możesz również przekonwertować istniejący plik na te kodowanie, ale lepiej stworzyć nowy plik i go powielać dla innych dokumentów, mi czasami konwersja nic nie daje

i po Twoim problemie : ) ten enter to typowe zachowanie braku kodowania bez BOM dla include

ps: cały czas myślałem, że masz problem z wczytaniem pliku sciana.gif sorki ale siedze w robocie no i wiesz... ;p

Ten post edytował gitbejbe 2.07.2013, 06:09:21
Go to the top of the page
+Quote Post
Dejmien_85
post 2.07.2013, 07:38:06
Post #9





Grupa: Zarejestrowani
Postów: 251
Pomógł: 23
Dołączył: 23.04.2013

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


Tak jak napisał gitbejbe - to musi być wina kodowania. Ustaw sobie UTF bez BOM.

PS Jakiego edytora/IDE używasz do pisania kodu?
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 27.05.2025 - 20:52