Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zagłębienie w kodzie...
Vasquez21
post 2.12.2004, 00:51:26
Post #1





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 2.11.2004
Skąd: Jaworzno

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


Witam

Chciałem połączyć działanie mojej stronki z plikami html generowanymi przez pewną grę. Jako, że pliki te maja byc również częścią strony musiałem stworzyć stronkę, która odpowiadałaby za wywoływanie wszystkich stron generowanych przez grę. Oto jak wygląda ta podstronka:

  1. <?php
  2. include(&#092;"sprses.php\"); //sprawdza sesję
  3. $strona = $HTTP_GET_VARS['strona']; //sprawdza który link został wybrany
  4. include(&#092;"gora.php\"); //ładuje logo strony
  5. include(&#092;"style.php\"); //ustawia style
  6. include(&#092;"menu_gora.php\"); //menu górne...
  7. include(&#092;"html/$strona\"); //noi oczywiście ta stronka... 
  8. ?>


I teraz problem pojawia się, wtedy gdy na wybranej stronie są odnośniki do innych podstron... mianowicie są to ścieżki orginalne które wygenerowała gra. Ja natomiast potrzebowałbym ponownie otworzyć daną stronkę w właśnie tym kodzie podanym wyżej. Czy jest na to jakiś sposób ?

Z góry dziękuję za wszelką pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
rogrog
post 2.12.2004, 15:00:52
Post #2





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


przechwytywanie outputu i podmienianie linków

Ten post edytował rogrog 2.12.2004, 15:01:20


--------------------
Go to the top of the page
+Quote Post
Vasquez21
post 2.12.2004, 20:05:21
Post #3





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 2.11.2004
Skąd: Jaworzno

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


hmmm nie bardzo rozumiem sad.gif
Go to the top of the page
+Quote Post
rogrog
post 2.12.2004, 20:19:48
Post #4





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


Cytat(Vasquez21 @ 2004-12-02 01:51:26)
Czy jest na to jakiś sposób ?

pytałeś się czy jest jakiś sposób. Odpowiedź powinna być boolowska smile.gif tak albo nie. No więc ja Ci mówię że tak. A nawet zrobiłem więcej niz prosiłeś - rzuciłem hasło co możesz zrobić.

Trzeba było mówić że chcesz wytłumaczenie jak to zrobić.

możesz np. coś takiego na początku strony
  1. <?php
  2.  
  3. function ob_replace_links( $str )
  4. {
  5.  
  6. // tutaj jakiś regexp poprawiający linki
  7. // w to się nie zagłębiam może ktoś Ci pomoże, a jak nie ucz się
  8. // wyrazen regularnych i sam napisz
  9. $str = preg_replace( 'sth', 'sth', $str );
  10.  
  11. return $str;
  12.  
  13. }
  14.  
  15. ob_start( 'ob_replace_links' );
  16.  
  17. ?>


Ten post edytował rogrog 2.12.2004, 22:03:18


--------------------
Go to the top of the page
+Quote Post
Vasquez21
post 2.12.2004, 20:34:49
Post #5





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 2.11.2004
Skąd: Jaworzno

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


ok spróbuję zawalczyć...
dzięki...

Grrr... i jednak mi nie wychodzi wrzuciłem na początek kodu to co mówiłeś żeby sprawdzić czy wogóle to działa. Nic mi się jednak teraz nie ładuje, zapewne coś źle wkleiłem.

  1. <?php
  2. function ob_replace_links( $strona )
  3. {
  4.  
  5. // tutaj jakiś regexp typu
  6. // w to się nie zagłębiam może ktoś Ci pomoże, a jak nie ucz się
  7. // wyrazen regularnych i sam napisz
  8. $strona = preg_replace( '', '', $strona );
  9.  
  10. return $strona;
  11.  
  12. }
  13.  
  14. ob_start( 'ob_replace_links' );
  15.  
  16. include(&#092;"sprses.php\"); //sprawdza sesję
  17. $strona = $HTTP_GET_VARS['strona']; //sprawdza który link został wybrany
  18. include(&#092;"gora.php\"); //ładuje logo strony
  19. include(&#092;"style.php\"); //ustawia style
  20. include(&#092;"menu_gora.php\"); //menu górne...
  21. include(&#092;"html/$strona\"); //noi oczywiście ta stronka... 
  22. ?>


Wydaje mi się,że powyższa funkcja w tym akurat momencie powinna nic nie zmieniać. W takim razie dlaczego otrzymuję pustą stronę ?

Mógłbym prosić o jakiś link albo cosik ?
Z góry dzięki.

Ten post edytował Vasquez21 2.12.2004, 21:29:00
Go to the top of the page
+Quote Post
rogrog
post 2.12.2004, 22:02:45
Post #6





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

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


Cytat(Vasquez21 @ 2004-12-02 21:34:49)
Grrr... i jednak mi nie wychodzi wrzuciłem na początek kodu to co mówiłeś żeby sprawdzić czy wogóle to działa. Nic mi się jednak teraz nie ładuje, zapewne coś źle wkleiłem.

nie działa dlatego, że argumenty do preg_replace są niewłaściwe. No ale jak chcesz sprawdzić czy zadziała "bez podmian" to daj to w odpowiedniej linijce

  1. <?php
  2. $strona = preg_replace( '//', '0', $strona );
  3. ?>


a może lepiej by było po prostu dać ten skrypt w katalogu plików html??

Ten post edytował rogrog 2.12.2004, 22:04:05


--------------------
Go to the top of the page
+Quote Post
Vasquez21
post 2.12.2004, 23:09:40
Post #7





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 2.11.2004
Skąd: Jaworzno

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


Cytat
a może lepiej by było po prostu dać ten skrypt w katalogu plików html??


Hmmm.... a jaka to będzie różnica bo chyba nie bardzo rozumiem. Chodzi Ci o to, by dopisać w każdym z nich ten skrypt ? To odpada bo plików jest zbyt wiele i mniej więcej co tydzień ich zawartość się zmienia.

Wracając jednak do skryptu to mam jeszcze jedno pytanko... jak sprawdzić kod stronki tą funkcją ? Już tłumaczę dokładniej o co mi chodzi.

  1. <?php
  2. // tutaj jak rozumiem jako $strona podajemy ciag znakow ktore maja byc sprawdzone,
  3. co jesli jednak ja chce przeszukac stronke ? html ? jak powinnienem to zapisac ?
  4. function ob_replace_links( $strona )
  5. {
  6.  
  7. $strona = preg_replace( '//', '0', $strona );
  8. return $strona;
  9.  
  10. }
  11.  
  12. ?>


Wydaje mi się, że gdybym w ten sposób sprawdzał każdą stronkę i podmieniał poprostu -> "<a href=stronka.html>" na "<a href=katalog/katalog/stronka.html>" to już wszystko by zaczęło działać. Bardzo proszę więc o rozwiązanie tego jak mniemam ostatniego problemu.
Go to the top of the page
+Quote Post
kociou1
post 3.12.2004, 01:55:21
Post #8





Grupa: Zarejestrowani
Postów: 78
Pomógł: 0
Dołączył: 13.02.2004
Skąd: warszawa

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


NIe wiem czy dobrze cię zrozumiełam - ale jeśli tak to wystarczy Ci zwyczajny HTML smile.gif
Sprawdź tag <base> - http://www.enter.pl/html/e/base.asp
Go to the top of the page
+Quote Post
Vasquez21
post 3.12.2004, 13:14:29
Post #9





Grupa: Zarejestrowani
Postów: 213
Pomógł: 0
Dołączył: 2.11.2004
Skąd: Jaworzno

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


zajebiste dzięki biggrin.gif
wszystko działa jak należy.

hmmm... a jednak znów znalazło się coś co nie chce działać :/... czy istnieje podobna komenda dla buttonów ? bo szukałem, ale nie udało mi się znaleźć.

Ewentualnie czy da się jakoś inaczej ustawić domyślnie ścieżkę, która ma być pobierana na konkretnej stronie ?
Myślałem, o czymś takim, że umieszczę ją przed includem, który ładuje kolejne stronki i wcześniej dam warunek sprawdzający jaka strona została załadowana i wtedy mógłbym ustalić wszystko.

Ten post edytował Vasquez21 3.12.2004, 23:05:52
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: 18.07.2025 - 01:43