Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Jak usunąć ze stringu wszystko co znajduje się między <? a ?>
sadistic_son
post
Post #1





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Mam taki skrypcik:
  1. $file=file_get_contents('plik.php');
  2. echo $file;
Jednak zależy mi aby wyświetlić tylko to co nie jest w php, czyli należy wywalić wszystko co jest pomiędzy znacznikami <? ?>
Pomoże ktoś w sformułowaniu wyrażenia regularnego? Bo nie jestem w tym za dobry.


--------------------
Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami...

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc!
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


  1. preg_replace('#<\?(.*?)\?>#s', '', $file);

...w sumie powinienem poprosić byś pokazał swoje, ale już napisałem, to...
Go to the top of the page
+Quote Post
erix
post
Post #3





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




http://pl2.php.net/manual/pl/function.strip-tags.php#93567 tongue.gif


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
pyro
post
Post #4





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


erix, strip_tags usuwa zarówno znaczniki PHP jak i znaczniki HTML. Co prawda autor nie powiedział, że NIE MA usuwać tagów HTML, ale podejrzewam, że będą potrzebne smile.gif


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
Go to the top of the page
+Quote Post
Pawel_W
post
Post #5





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

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


Cytat(sadistic_son @ 18.09.2009, 19:57:46 ) *
Mam taki skrypcik:
  1. $file=file_get_contents('plik.php');
  2. echo $file;
Jednak zależy mi aby wyświetlić tylko to co nie jest w php, czyli należy wywalić wszystko co jest pomiędzy znacznikami <? ?>
Pomoże ktoś w sformułowaniu wyrażenia regularnego? Bo nie jestem w tym za dobry.

file_get_contents pobierze ci już wykonany kod, dlatego nie będzie zawierał znaczników <?php ?> ----> nie da się ich usunąć winksmiley.jpg
Go to the top of the page
+Quote Post
sadistic_son
post
Post #6





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


niestety to nie działa. Zawartość teog pliku ma sie znalezc w textarea i niestety robia sie krzaczki. Całość wygląda tak:
  1. //to jest zawartość pliku main.php
  2. //Ma on za zadanie wrzucić samego siebie do textarea ale tylko to co w htmlu
  3. if(isset($_SESSION['logged']) && isset($_GET['edit'])){
  4. $main_content_file=file_get_contents('main.php');
  5. $main_content_file=preg_replace('#<\?(.*?)\?>#s', '', $main_content_file);
  6. echo'<form action="main.php" method="post" >
  7. Edycja zawartości strony
  8. Treść strony:
  9. <textarea name="main_content" >'.$main_content_file.'</textarea><br />
  10. <input type="submit" name="edit_content" value="Edytuj" /><br />
  11. </form>
  12. ';
  13. }
  14.  
  15. ?>
  16. <div>
  17. Ciągdalszy htmla
  18. </div>
Chodzi mi to to aby w textarea pokazało sie tylko <div>Ciągdalszy htmla</div>. Bo w chwili obecnej wyświetla się kod php a do tego nawet poza textara.

Cytat(Pawel_W @ 18.09.2009, 20:42:34 ) *
file_get_contents pobierze ci już wykonany kod, dlatego nie będzie zawierał znaczników <?php ?> ----> nie da się ich usunąć winksmiley.jpg
To jakiej funkcji uzyc? file() nie chce bo nie potrzebuje tablicy.

Ten post edytował sadistic_son 18.09.2009, 19:47:20


--------------------
Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami...

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc!
-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
Go to the top of the page
+Quote Post
pyro
post
Post #7





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


Cytat(Pawel_W @ 18.09.2009, 20:42:34 ) *
file_get_contents pobierze ci już wykonany kod, dlatego nie będzie zawierał znaczników <?php ?> ----> nie da się ich usunąć winksmiley.jpg


Takie bzdury pleciesz, że aż słabo.

@sadistic_son, musisz także przed wyświetleniem w textarea użyć htmlspecialchars jesli są tam jakies znaczniki HTML.


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
Go to the top of the page
+Quote Post
erix
post
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
erix, strip_tags usuwa zarówno znaczniki PHP jak i znaczniki HTML

Zobacz uważnie, do czego zalinkowałem; zwłaszcza zwróć uwagę na hash. tongue.gif


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Pawel_W
post
Post #9





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

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


miałem ostatnio taki sam problem, był plik.php:
  1. <?php exit; ?>
  2. dane które mnie interesują ;)

no i nie miałem za bardzo jak się do nich dobrać, dużo czytałem na ten temat i nie znalazłem odpowiedzi, jedyne czego się dowiedziałem, to że chyba sqlite używa takiego formatu przechowywania danych ;o

jeżeli ktoś miałby pomysł jak w pliku php wyciągnąć "dane, które mnie interesują" to byłbym bardzo wdzięczny winksmiley.jpg
Go to the top of the page
+Quote Post
pyro
post
Post #10





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


Cytat(erix @ 18.09.2009, 20:48:30 ) *
Zobacz uważnie, do czego zalinkowałem; zwłaszcza zwróć uwagę na hash. tongue.gif


Rzeczywiście, nie zwróciłem uwagi na kotwicę.

@Pawel_W, dobrze by było przeczytać temat, w którym się teraz znajdujesz. Nieprawidłowe wyrażenie regularne? Popraw je. Nie wiesz jak poprawić wyrażenie? Skorzystaj z linka @erix'a

Ten post edytował pyro 18.09.2009, 19:54:19


--------------------
ET LINGUA EIUS LOQUETUR IUDICIUM
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 Aktualny czas: 20.08.2025 - 13:32