Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]wyczyścić treść ze znaczników html, ale nie wszystkich
Forum PHP.pl > Forum > Przedszkole
skleps
Czy jest jakaś gotowa funkcja lub inne gotowe rozwiązanie, które umozliwia:
1. wyczyszczę z treści przechowywanej w zmiennej tagi html jak również wszelkie CSS, JS itp, ale zostawi dozwolone przez mnie tagi html
2. dozwolone tagi wyczyści z wszelkich atrybutów, czyli jeśli np. pozwalam na <p>, to jeśli natrafi na <p style="costam" id="cosinnego"> to i tak zmieni to na czyste <p>

Punkt pierwszy częściwo robi funkcja strip_tags,a le ona nie realizuje punktu 2.
CuteOne
- preg_replace() + odpowiednie wyrazenie regularne, ktore usunie tylko wybrane tagi
- preg_replace() + odpowiednie wyrażenie regularne, które usunie z pozostawionych tagów ich atrybuty
skleps
Cytat(CuteOne @ 31.07.2012, 19:04:56 ) *
- preg_replace() + odpowiednie wyrazenie regularne, ktore usunie tylko wybrane tagi
- preg_replace() + odpowiednie wyrażenie regularne, które usunie z pozostawionych tagów ich atrybuty


Chyba lepiej:
1. strip_tags i przepuścić tylko takie tagi jak chcę
2. preg_replace() + odpowiednie wyrażenie regularne, które usunie z pozostawionych tagów ich atrybuty

Ale przyznam się ze z wyrażeń regularnych to jestem noga totalna sad.gif

Czy może mi ktoś napisać przykładowe wyrażenie, żeby z taga np. < p id=cokolwiek style="cos innego"> zostawiło mi tylko <p> ?
Wtedy już resztę tagów na podstawie tego jednego wzorca obrobię...
BaN
Cytat(skleps @ 31.07.2012, 21:51:11 ) *
Czy może mi ktoś napisać przykładowe wyrażenie, żeby z taga np. < p id=cokolwiek style="cos innego"> zostawiło mi tylko <p> ?


Przykłady:
  1. preg_replace("/<(p|P).*?>/", "<\\1>", $text);

albo
  1. mb_ereg_replace("<(p|P).*?>", "<\\1>", $text);

skleps
Cytat(BaN @ 1.08.2012, 00:17:58 ) *
Przykłady:
  1. preg_replace("/<(p|P).*?>/", "<\\1>", $text);


Dziękuję, mając taką podstawę resztę się podorabia...
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.