|
Poslao: 29 Jun 2007 23:51
|
offline
- igorpan

- Super građanin
- Pridružio: 10 Avg 2006
- Poruke: 1009
- Gde živiš: Beograd
|
Treba mi pomoć, dakle, 5000 pitanja sam postavio jer radim neki sajt koji treba da bude multijezička online enciklopedija.
e, napravio sam milion tagova za bold, tabele, muziku, slike itd itd itd itd....
napravio sam funkciju koja to pretvara u html....
ono što ne znam je kako da ubacim da ta funkcija preskoči deo teksta ograničen sa nekim tagovima , kao recimo, na forumu [code] i [/code] ... ?
|
|
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
|
Poslao: 30 Jun 2007 11:57
|
offline
- Blood

- Ugledni građanin
- Pridružio: 26 Jul 2003
- Poruke: 384
- Gde živiš: Beograd
|
Postavi nam da vidimo kako si resio onaj problem pa da ti kazemo resenje ovog problema
|
|
|
|
|
|
|
Poslao: 30 Jun 2007 14:47
|
offline
- stankovic

- Prijatelj foruma
- Pridružio: 11 Maj 2005
- Poruke: 871
- Gde živiš: Aleksinac - Niš
|
Ako hoces da ti ta funkcija formatira neki tekst izmedju nekih tagova kao obican tekst a ne kao html probaj ovako:
Svako < zameni sa < a svako > zameni sa >
promeni to kod svakog taga, na primer funkcijom str_replace:
str_replace(">", ">", $text);
Nisam siguran da li sam te tacno razumeo sta hoces...
|
|
|
|
|
|
|
Poslao: 30 Jun 2007 15:33
|
offline
- igor86

- Stručni saradnik
Web programiranje
- Pridružio: 24 Maj 2006
- Poruke: 1633
|
Citat:...ono što ne znam je kako da ubacim da ta funkcija...
Koja funkcija...
Mislim da ovo trazis
[code]
<?php
$string = 'Ovo je tekst koji[code] se nece ispisati[/code] se hoce ispisati';
$patterns[0] = '"\[code](.+?)\[/code\]"';
$replacements[0] = '';
print preg_replace($patterns, $replacements, $string);
?>
[/code]
|
|
|
|
|
|
|
Poslao: 03 Jul 2007 01:18
|
offline
- mnicic

- Super građanin
- Pridružio: 01 Maj 2003
- Poruke: 1300
- Gde živiš: Kragujevac
|
Kako da preskoci? Sta zelis da dobijes od nr [code] taga? Bojim se da te nisam razumeo...
|
|
|
|
|
|
|
Poslao: 04 Jul 2007 17:13
|
offline
- igorpan

- Super građanin
- Pridružio: 10 Avg 2006
- Poruke: 1009
- Gde živiš: Beograd
|
pa, ovako, kako tekst treba da bude pregledan, dozvolio sam članovima na sajtu da u članke ubacuju sledeće tagove :
Ovi znate za šta služe....
1. [b] [/b]
2. [i] [/i]
3. [u] [/u]
Ovi su za tabelu ....
4. [table] [/table]
5. [table band] [/table] // Isto za tabelu, samo sto ne pretvara u "<table>" nego u "<table class='band'>"
6. [td] [/td]
7. [tr] [/tr]
8. [th] [/th]
Dodatni tagovi
9. [image=opis_slike]adresa[/image] //slika
10. [mplink=članak]tekst[/mplink] //ovaj tag trazi članak na sajtu i pravi link ka njemu. Ako članak postoji, boji ga plavo, ako ne, boji ga crveno... kao na wikimediji
E, ono što je meni potrebno je da funkcija koja ove tagove pretvara u HTML, preskoči deo teksta ograničen sa, recimo [ignore] i [/ignore]
Primer
[image=Tekst ispod slike]url[/image]
[ignore] [image=Tekst ispod slike 2]url2[/image] [/ignore]
[b] dalji tekst [/b]
I,dakle, zelim da mi funkcije preg_replace() i str_replace() koje pretvaraju tagove u HTML preskoce deo izmedju "ignore", tj da pretvori dati tekst u :
<div><img src="url"><br />Tekst ispod slike</div>
[image=Tekst ispod slike 2]url2[/image]
<b> dalji tekst</b>
ovo sa div i to ne gledajte, to je samo primer, inace drugacije izgleda html kod za sliku ....
vidim da sam opet cudno sve ispisao, ali, nadam se da razumete, šta ću, nisam rečit.... . znači, samo da preskoči replejsovanje dela teksta između "ignore" tagova ....
|
|
|
|
|
|
|
Poslao: 04 Jul 2007 17:21
|
offline
- Peca

- Glavni Administrator
- Predrag Damnjanović
- SysAdmin i programer
- Pridružio: 17 Apr 2003
- Poruke: 23212
- Gde živiš: Niš
|
ideja:
1. deo koji ne treba da se dira smesti u neku promenljivu, a na njegovo mesto postavi neki identifikator (recimo: [ovde-je-bilo-nesto-12345])
2. odradi standardno formatiranje svega
3. na mesto identifikatora vrati sacuvani tekst (i po potrebi formatiraj i njega zasebno na zaseban nacin, pre vracanja)
|
|
|
|
|
|
|
Poslao: 04 Jul 2007 17:31
|
offline
- igorpan

- Super građanin
- Pridružio: 10 Avg 2006
- Poruke: 1009
- Gde živiš: Beograd
|
hm..... da .... nesto slicno radim i sa [mplink] tagovima.....
mislio sam da moze na neki drugi nacin da se to obavi, posto se bojim da ce stranici trebati previse vremena za executovanje, jer ono sto sam pokazao nisu svi tagovi, pa , ako se natrpa, moze stvarno da potraje (nekoliko sekundi) ....
hvala
|
|
|
|
|
|
|
Poslao: 04 Jul 2007 17:42
|
offline
- Peca

- Glavni Administrator
- Predrag Damnjanović
- SysAdmin i programer
- Pridružio: 17 Apr 2003
- Poruke: 23212
- Gde živiš: Niš
|
ova moja ideja nece usporiti izvrsavanje, siguran sam...
btw, upotrebljavaj bbcode_uid.
phpbb recimo koristi to, i ideja je u sledecem:
kada korisnik postuje post, izvrsava se prvobitno parsiranje, koje recimo [b] pretvara u [b:hhd6w3t], i u svim validim bbkodovima umetne taj uid.
kada prikazujes stranicu, imas daleko manji zadatak - jer su ti bbkodovi vec markirani, pa nemas proces ispitivanja sta je validan a sta nije validan kod [a tu vec imas i foru da kod izmedju [code] nije markiran u prvom parsiranju, pa ga drugo parsiranje glatko preskoci, sto ti takodje stedi vreme izvrsavanja skripte].
|
|
|
|
|
|
|
|