Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP]domena.pl/index.php iiii /jakis tekst
djtomaszq
post 20.07.2015, 10:53:15
Post #1





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


Mam dwa podobne pytania:

1. Tak jak w temacie jak na mojej stronie www.mojastrona.pl/index.php <--- tu dodam coś takiego --> /jakiś tekst to wyświetli mi się moja strona trochę "przemeblowana" tzn bez formatowania css. Jestem w tym zielony czy ktoś mi to mógłby wytłumaczyć czy to normalne i nie ma znaczenia czy może jakoś się przed ty można zabezpieczyć?

2. Jeśli odnoszę się do plików na serwerze bepośrednio to pojawia mi się tak samo brzydka strona.
Np. link do forum to: http://domena.pl/index.php?parent=forum a jeśli wpisze http://domena.pl/forum/forum.php to wyswietli sie także forum ale jakby w osobnym pliku tak jak to w nim jest a nie jako podkatalog index.php. Jest na to jakaś rada?
Go to the top of the page
+Quote Post
2 Stron V   1 2 >  
Start new topic
Odpowiedzi (1 - 19)
Daimos
post 20.07.2015, 10:57:06
Post #2





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


Musisz sięgnąć po podstawy i zwróć uwagę na sposób wpisywania ścieżek do plików (obrazków, styli itp.). Możesz adresować pliki na 3 sposoby, Ty korzystasz z pierwszego, relatywnego:
Kod
folder/plik

ścieżka relatywna odnosi się do folderu, w którym aktualnie jesteś, więc jeśli masz adres.pl/forum, to po takiej ścieżce, wczytywany jest plik: /forum/folder/plik.
Aby temu zaradzić, podawaj adresy bezwzględne, z domeną lub bez:
Kod
/folder/plik

zwróć uwagę, że na początku masz łamanie /
Kod
http://domena.pl/folder/plik


--------------------
scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
Go to the top of the page
+Quote Post
djtomaszq
post 20.07.2015, 11:22:28
Post #3





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


czyli w kazdym linku wystarczy dodac "/" i wtedy jak wpisze www.domena.pl/forum/forum.php nie wyswietli mi sie ta strona? Tak samo na localhoscie?

. a co z pierwszym problemem?

Ten post edytował djtomaszq 20.07.2015, 11:23:35
Go to the top of the page
+Quote Post
markuz
post 20.07.2015, 11:51:05
Post #4





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


Nie wystarczy.

Poczytaj o .htaccess, zrób tak aby wszystkie requesty poza plikami typu css, img np. z folderu "public" były przekierowywane na index.php, nastepnie w index.php sprawdzaj ścieżkę i na jej podstawie wyświetlaj odpowiednią podstrone.

Zainteresuj się frameworkiem który zrobi to za Ciebie, na początek polecam coś prostego np. CodeIgniter.


--------------------
Go to the top of the page
+Quote Post
Daimos
post 20.07.2015, 11:52:56
Post #5





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


Problem masz jeden, ale opisałeś dwa przypadki, w jednym i drugim chodzi o ścieżki, dodaj wszędzie poprawne i będzie działać


--------------------
scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
Go to the top of the page
+Quote Post
markuz
post 20.07.2015, 12:00:18
Post #6





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


@Daimos On chce aby plik /forum/forum.php nie był dostepny z poziomu przeglądarki (zawiera tylko content bez nagłówków itp.) - zobacz jego poprzedni temat.


--------------------
Go to the top of the page
+Quote Post
Daimos
post 20.07.2015, 12:18:01
Post #7





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


Nie wiem w jaki sposób to tak zrozumiałeś, ale szacunek dla Ciebie za udane śledztwo smile.gif A autorowi w takim razie polecę lepiej formułować problemy.


--------------------
scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
Go to the top of the page
+Quote Post
djtomaszq
post 20.07.2015, 12:47:41
Post #8





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


Mam w glownym katalogu ftp pliki index.php i login.php i register.php a takze katalog forum i css w katalogu forum są pliki forum.php connect.php i dodaj.php a w css sa 3 pliki css..

.. strona dziala. Poprawny link wejscia na strone www.domena.pl.
Kiedy na nią wejde wyswietla sie adres domena.pl/index.php i dziala.
Klikne w menu w link forum i jest adres domena.pl/index.php?parent=forum . Jesli wpisze w pasek przegladarki sam link taki: domena.pl/forum/forum.php to wyswietla mi sam plik forum.php.
Tego nie chce. Chce zeby ten plik wyswietlal sie tylko po wpisaniu poprawnego linku.

A ten pierwszy problem to do jakiegokolwiek linku domena.pl/index.php po wyrazie .php jesli dodam jakikolwiek tekst po sleshu to mi psuje strone...

I ktora odpowiedz na moje pytanie jest wlasciwa? Przepraszam za wprowadzenie w blad lub zle formulowanie pytania. Mam nadzieje ze teraz poprawnie napisalem...
Go to the top of the page
+Quote Post
Daimos
post 21.07.2015, 08:23:17
Post #9





Grupa: Zarejestrowani
Postów: 1 319
Pomógł: 118
Dołączył: 26.11.2003
Skąd: Lublin

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


Cytat(djtomaszq @ 20.07.2015, 13:47:41 ) *
Klikne w menu w link forum i jest adres domena.pl/index.php?parent=forum . Jesli wpisze w pasek przegladarki sam link taki: domena.pl/forum/forum.php to wyswietla mi sam plik forum.php.

Musisz sprawdzić w pliku forum.php czy został otwarty za pomocą index.php. Jeżeli nie korzystasz z ramek, tylko używasz php to zagnieżdżenia strony, to przykładowa walidacja popularna np. w phpbb:
index.php (pierwsza linijka):
  1. <?php
  2. define('MOJ_WALIDATOR', true);

forum.php:
  1. <?php
  2. if(!is_defined('MOJ_WALIDATOR'))
  3. {
  4. // forum tutaj na siłę próbuje zamienić to na odnośnik, ale wiesz co tu robić pewnie ;)
  5. }


Cytat(djtomaszq @ 20.07.2015, 13:47:41 ) *
A ten pierwszy problem to do jakiegokolwiek linku domena.pl/index.php po wyrazie .php jesli dodam jakikolwiek tekst po sleshu to mi psuje strone...

a ten problem, to rozwiązałem Ci w poprzednim poście, masz relatywne odnośniki do styli itp. więc dodaj na początku każdej ścieżki /, więc zamiast:
css/styles.css
wstawiasz
/css/styles.css



Ten post edytował Daimos 21.07.2015, 08:24:30


--------------------
scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
Go to the top of the page
+Quote Post
djtomaszq
post 21.07.2015, 19:28:08
Post #10





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


Cytat(Daimos @ 21.07.2015, 09:23:17 ) *
Musisz sprawdzić w pliku forum.php czy został otwarty za pomocą index.php. Jeżeli nie korzystasz z ramek, tylko używasz php to zagnieżdżenia strony, to przykładowa walidacja popularna np. w phpbb:
index.php (pierwsza linijka):
  1. <?php
  2. define('MOJ_WALIDATOR', true);

forum.php:
  1. <?php
  2. if(!is_defined('MOJ_WALIDATOR'))
  3. {
  4. // forum tutaj na siłę próbuje zamienić to na odnośnik, ale wiesz co tu robić pewnie ;)
  5. }



a ten problem, to rozwiązałem Ci w poprzednim poście, masz relatywne odnośniki do styli itp. więc dodaj na początku każdej ścieżki /, więc zamiast:
css/styles.css
wstawiasz
/css/styles.css


Wkleiłem na pierwszą linijkę indexa i na pierwszą linijkę forum tak jak piszesz a w nawiasy {} wstawiłem całą zawartość strony zamiast header("location: http://domena.pl/index.php" i wyskakuje blad: (pewnie nie tak mialem wstawic?

  1. Fatal error: Call to undefined function is_defined() in



W drugim przypadku jak zmienie sciezke na
  1. <link href="/css/style.css" type="text/css" rel="stylesheet" />

to w ogóle nie ma formatowania na żadnej stronie.

Dodam, że teraz sprawdzam wszystko na localhoscie, nie wiem czy to ma jakieś znaczenie.

ale ten problem widzę, że jest tak samo na tym forum. np. proszę wpisać stronę http://forum.php.pl/index.php/hacker
Go to the top of the page
+Quote Post
nospor
post 21.07.2015, 19:30:57
Post #11





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




http://php.net/manual/en/function.defined.php


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
djtomaszq
post 21.07.2015, 20:10:29
Post #12





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


Niestety ciężko z angielskim i nie mogę zrozumieć manuala
Go to the top of the page
+Quote Post
nospor
post 21.07.2015, 20:19:34
Post #13





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




nie ma funkcji IS_DEFINED... jest funkcja DEFINED. Kojarz fakty


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
djtomaszq
post 22.07.2015, 08:14:31
Post #14





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


To w takim razie nie rozumiem tej podpowiedzi z kodem jeśli takiej funkcji nie ma...
Go to the top of the page
+Quote Post
nospor
post 22.07.2015, 08:21:33
Post #15





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




rety.... osoba ktora ci to pisala, pisala to z palca, bez sprawdzenia i z rozmachu dopisala is_.... tlumacze ci poraz kolejny ze zamiast is_defined() masz napisac defined(). to naprawde tak ciezko to ogarnac?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
djtomaszq
post 22.07.2015, 09:51:23
Post #16





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


Nie ciężko smile.gif

Zrobiłem tak:
  1. if(!defined('MOJ_WALIDATOR')){
  2. header('Location: <a href="http://localhost/~wolanie/index.php&#39%3b%29;}" target="_blank">http://localhost/~wolanie/index.php');}</a>


i błąd
  1. Warning: Cannot modify header information - headers already sent by


a jak zrobie tak:
  1. if(defined('MOJ_WALIDATOR')){
  2. normalna wyświetlona część strony}

to po wpisaniu linku prawidlowego jest dobra strona a po wpisaniu forum/forum.php jest cala biala strona.
Czy tak miało być? I jesli w index.php oprocz tego forum mam jeszcze inne includowane w indexie strony i tez nie chce zeby otwieraly sie osobno tylko przez index to musze w kazdym pliku to define na poczatku "zawarunkować" ?

Ten post edytował djtomaszq 22.07.2015, 09:53:37
Go to the top of the page
+Quote Post
nospor
post 22.07.2015, 09:52:58
Post #17





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Cannot modify header information - headers already sent by
Uzyj wyszukiwarki. problem poruszany petryliard razy.

A jak ci sie nie chce to wywal to header i daj poprostu:

die('Spadaj dziadu nie kombinuj mi tu');
i juz


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
djtomaszq
post 22.07.2015, 09:59:13
Post #18





Grupa: Zarejestrowani
Postów: 192
Pomógł: 0
Dołączył: 5.07.2015

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


nospor to bardzo ciekawe rozwiązanie, dzięki smile.gif

Nie chce tego problemu poruszać tu bo już wiem tylko chodzi mi o to czy tak właśnie powinno to wyglądać ? I czy muszę to w każdym pliku dodać jeśli nie chce pokazywac plików bezposrednio z folderów tylko przez indexa


EDIT.: I nie działa mi dodanie / przed css

<link href="/css/style.css" type="text/css" rel="stylesheet" />

Ten post edytował djtomaszq 22.07.2015, 10:03:09
Go to the top of the page
+Quote Post
Fred1485
post 22.07.2015, 10:02:47
Post #19





Grupa: Zarejestrowani
Postów: 361
Pomógł: 22
Dołączył: 10.02.2015

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


Cytat
Warning: Cannot modify header information - headers already sent by


http://php.net/manual/en/function.ob-start.php


--------------------
  1. echo 'I was trying';
  2. die ();
Go to the top of the page
+Quote Post
nospor
post 22.07.2015, 10:03:51
Post #20





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Takie pliki, ktore nie powinny byc dostepne z przegladarki powinny lezec w katalogu, ktory nie jest dostepny z przegladarki.
Albo wiec taki katalog wywalasz poza webroot, albo wwalasz do niego plik .htaccess i dajesz deny from all i po sprawie.

Ja osobiscie nigdy nie bawie sie wlasnie w ted defined i die bo dla mnie to jest bezsensowana zabawa. To sie wlasnie zalatwia przez caly zabroniony katalog i juz


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

2 Stron V   1 2 >
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: 20.06.2025 - 13:18