![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 0 Dołączył: 15.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Otóż tworzę tag HIDE (via funkcja js):
Wszystko działa cacy gdyby nie zachciało Mi się jego "zagnieżdżania", czyli w ten tag wkładania drugiego takiego na wzór: Kod 1 - [HIDE=tekst1]fggdfgwerc 2 - [HIDE=tekst2]fgdfhrtgwercreve 3 - [/HIDE] 4 - fgdfgdfgdfgdf[/HIDE] (cyfry to numery linijek) i przy jego przemielaniu powyższym preg'iem bo bierze pary linijek 1 i 3, a 2 i 4 wykitowuje powinno brać 1 i 4 oraz 2 - 3... Jedyne co przychodzi Mi do głowy to sprawdzanie całego tekstu preg'ami od końca, bo wtedy zawsze zacznie od najbardziej zagłębionego tagu [HIDE=, tylko pytanie jak do tego zmusić preg'i lub jak obejść? (IMG:http://forum.php.pl/style_emoticons/default/blinksmiley.gif) Pozdrawiam (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 326 Pomógł: 121 Dołączył: 23.07.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
W wyrazeniu regularnym podales, ze wnetrze miedzy [HIDE] i [/HIDE] ma byc przechwytywane leniwie, podczas gdy powinno byc zachlannie:
Zamiast Kod .*? to Kod .* Czyli zamiast
to
a to wpakowac w petle:
Ten post edytował ddiceman 6.12.2008, 20:42:27 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 0 Dołączył: 15.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
PRAWIE działa bo zarówno pierwszy jak i drugi tag otwierający "chwyta" pierwszy zamykający:
Kod 1 - [HIDE=tekst1]fggdfgwerc 2 - [HIDE=tekst2]fgdfhrtgwercreve 3 - [/HIDE] 4 - fgdfgdfgdfgdf[/HIDE] Powstają łączenia 1-3 i 2-3... |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 326 Pomógł: 121 Dołączył: 23.07.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Sprobuj
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 0 Dołączył: 15.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Nah, nadal zachowuje się tak samo...
A może jakoś... numerować te hidy (zarówno otwierane jak i zamykane)? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 326 Pomógł: 121 Dołączył: 23.07.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Niemozliwe, ze zachowuje Ci sie tak, samo, bo dokladnie na tym przykladzie sprawdzalem, ze dziala. Odpal sobie ten kod PHP a zobaczysz.
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 0 Dołączył: 15.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Odpal sobie ten kod PHP a zobaczysz. Tak też zrobiłam i nic z tego... (IMG:http://forum.php.pl/style_emoticons/default/worriedsmiley.gif) EDIT: Mam przyczynę, to JS nawala: Tylko dlaczego nawala? Ten post edytował Ania-678 7.12.2008, 19:45:37 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 326 Pomógł: 121 Dołączył: 23.07.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Kod <script type="text/javascript" language="javascript">
function hide(obj){ if(document.getElementById(obj).className){ document.getElementById(obj).className = document.getElementById(obj).className=='phide' ? 'pvisible' : 'phide'; } else{ document.getElementById(obj).className='pvisible'; } } </script> Ten post edytował ddiceman 7.12.2008, 20:06:43 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 72 Pomógł: 0 Dołączył: 15.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
JS załatwiony... ale pojawił się znów problem, bo jak używam tego kodu z pętlą to znaczniki zagnieżdżone działą ładnie... ael już nawet nie jest "przetwarzany" przez preg'i znacznik który nie jest zagnieżdżony i nie jest pierwszy tzn:
Kod 1 - [HIDE=costam]tekst1 2 - [HIDE=costam2] tekst2 [/HIDE] 3 - tekst1a 4 - [/HIDE] 5 - [HIDE=costam3] tekst3 [/HIDE] Piąte wcale nie rusza... Ten post edytował Ania-678 11.12.2008, 21:36:44 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 11:16 |