Registreer FAQ Ledenlijst Berichten van vandaag


Ga terug   Scholieren.com forum / Technologie / Software & Hardware
Reageren
 
Topictools Zoek in deze topic
Oud 10-05-2003, 18:13
Scooter B0y
Avatar van Scooter B0y
Scooter B0y is offline
Hallo mede s.com nerdjes

Uit verveling maar ik altijd ubb parser (don't ask ) en nu had ik een idee om een goede ubb parser te gaan maken, dit van zich zelf ook zeer inteligent is en zelf fouten in de text kan vinden.

foutjes zoals
code die hier boven staat is [b] [code] [/b] [/code]

en als een quote afsluit alle codes die in de quote nog open waren afsluiten en dan daar buiten weer openen

Voor:
[quote] [b] Blod text in een quote [/quote] verdere text [/b]

Na:
[quote] [b] Blod text in een quote [/b] [/quote] [b]verdere text [/b]


anders krijg je opmaak foutjes zoals, Quote dat bold is bijvoorbeeld


Wie heeft zin om hier mee te werken :?
Met citaat reageren
Advertentie
Oud 10-05-2003, 18:17
deathz0rz
deathz0rz is offline
heej goed id!

ik wil wel meehelpen, maar (MAAR!) ik wil eerst ff m forum gedeeltelijk af hebben (dat je kan lezen e.d., en dat het goed zit met de permissies)

(mag ik die dan gebruiken in me forum??? plz... )
__________________
Ooit. Dan.
Met citaat reageren
Oud 10-05-2003, 18:26
Scooter B0y
Avatar van Scooter B0y
Scooter B0y is offline
je bouwt er toch zelf aan, dus ja?

mijn idee is ook om als je een bericht op een forum post dat de eerste stap dan is

dat hij de text omgaat zetten en malig, (scheelt rekenkracht als hij 50 stuks op een pagina moet doen)

bijvoorbeeld:
[b] bold [/b]
omzet naar
[b:123] bold [/b:123]

123 is hier het ID nummer van de post in het forum, zo kun je bij het bericht quoten snel de andere quote replacen tot [...] of er gewoon uitfilteren

en dan als je het bericht zelf wil parsen alleen maar dit hoeft te doen

PHP-code:
<?
$uid = 123;

$text = str_replace("[b:$uid]", "<b>", $text);
$text = str_replace("[/b:$uid]", "</b>", $text);

?>
Met citaat reageren
Oud 10-05-2003, 19:19
deathz0rz
deathz0rz is offline
Citaat:
Scooter B0y schreef op 10-05-2003 @ 19:26:
je bouwt er toch zelf aan, dus ja?
het is toch handig als ik een slimme parser heb? hoef ik niet HELEMAAL zelf te schrijven

Citaat:
Scooter B0y schreef op 10-05-2003 @ 19:26:
mijn idee is ook om als je een bericht op een forum post dat de eerste stap dan is

dat hij de text omgaat zetten en malig, (scheelt rekenkracht als hij 50 stuks op een pagina moet doen)

bijvoorbeeld:
&#91;b] bold &#91;/b]
omzet naar
&#91;b:123] bold &#91;/b:123]

123 is hier het ID nummer van de post in het forum, zo kun je bij het bericht quoten snel de andere quote replacen tot [...] of er gewoon uitfilteren

en dan als je het bericht zelf wil parsen alleen maar dit hoeft te doen

PHP-code:
<?
$uid = 123;

$text = str_replace("[b:$uid]", "<b>", $text);
$text = str_replace("[/b:$uid]", "</b>", $text);

?>
wat is de bedoeling van ":123", phpBB doet dat ook, maar ik zie het nut er niet van in...
__________________
Ooit. Dan.
Met citaat reageren
Oud 10-05-2003, 21:42
Scooter B0y
Avatar van Scooter B0y
Scooter B0y is offline
dat :123 (id van post) is gewoon dat de second pass gewoon snelle parse kan doen omdat hij alleen met str_replace alles kan replacen ook qoute in een qoute in een.... enz dat kan preg_replace niet, preg_replace doet maar 1 keer en dan houdt die op (slechte eigenschap eigenlijk) dus gaat de first pass overal :123 bijzetten en dan kan second pass gewone domme werk doen
Met citaat reageren
Oud 10-05-2003, 21:49
deathz0rz
deathz0rz is offline
Citaat:
Scooter B0y schreef op 10-05-2003 @ 22:42:
dat :123 (id van post) is gewoon dat de second pass gewoon snelle parse kan doen omdat hij alleen met str_replace alles kan replacen ook qoute in een qoute in een.... enz dat kan preg_replace niet, preg_replace doet maar 1 keer en dan houdt die op (slechte eigenschap eigenlijk) dus gaat de first pass overal :123 bijzetten en dan kan second pass gewone domme werk doen
ben ik dom als ik het nog niet snap?

je kan toch gewoon str_replace("[b]", "<b>", $text); doen?

en dat ie de quotes uit de quotes haalt vind ik niet zo nuttig... maar misschien jij wel, maak dan dat je het aan en uit kan zetten...

owja: dit is handig: [quote=username] (zie phpBB)

die moeten we echt inbouwen, en ik vind dat de codes uit een database moeten komen, en dat het makkelijk moet zijn om nieuwe codes toe te voegen

ik zie trouwens niet veel andere mensen die hier op reageren... lijkt me wel handiger trouwens, want met een groep van >3 zoiets doen lijkt me bijna onmogelijk
__________________
Ooit. Dan.
Met citaat reageren
Oud 10-05-2003, 21:59
Scooter B0y
Avatar van Scooter B0y
Scooter B0y is offline
denk er nu alleen over ja, enige na deel aan str_replace idee,

bij iedere code moet hij hele bericht weer na zoeken, andere idee is om eerst een splitter te gaan maken die in arrays gooit en dat die die dan gaat na kijken, bijvoorbeeld

PHP-code:
Array
(
    [
0] => Array
        (
            [
0] => 0
            
[1] => text voor quote 
        
)

    [
1] => Array
        (
            [
0] => 1
            
[1] => quote
            
[2] => quote
        
)

    [
2] => Array
        (
            [
0] => 0
            
[1] => text in quote
        
)

    [
3] => Array
        (
            [
0] => 2
            
[1] => quote
            
[2] => /quote
        
)
    [
3] => Array
        (
            [
0] => 0
            
[1] => text na quote
        
)

uitleg:
Code:
    [3] => Array
        (
            [0] => 2  id nummer van soort "probleem" 
            [1] => quote tag
            [2] => /quote welke tag gezien
        )
    [3] => Array
        (
            [0] => 0  id nummer van soort "probleem" 
            [1] => text na quote [b] omdat id 0 is is gewoon text
        )
id 0 = text
id 1 = tag open
id 2 = tag sluiten


[quote][b]
ben ik dom als ik het nog niet snap?

je kan toch gewoon str_replace("", "<b>", $text); doen?

en dat ie de quotes uit de quotes haalt vind ik niet zo nuttig... maar misschien jij wel, maak dan dat je het aan en uit kan zetten...

owja: dit is handig:
Citaat:
username schreef:
(zie phpBB)

die moeten we echt inbouwen, en ik vind dat de codes uit een database moeten komen, en dat het makkelijk moet zijn om nieuwe codes toe te voegen

ik zie trouwens niet veel andere mensen die hier op reageren... lijkt me wel handiger trouwens, want met een groep van >3 zoiets doen lijkt me bijna onmogelijk
nee dan ben je niet dom
als je gewoon str_replace doet kun je maar 1 ding, niett str_replace("(.+)", "<b>\\1</b>", $text); zowals bij preg_replace. str_replace vervangt gewoon wat hij gezegt wordt en geen moeilijke dingen
Met citaat reageren
Oud 10-05-2003, 23:41
deathz0rz
deathz0rz is offline
ow, ik snap het nu denk ik, je doet 1st met preg_replace, omdat die het bter kan dan str_bla, maar je wil in de database geen html zetten, en voor de snelheid... *bla**bla*

goed?

dat array id vind ik maar niks, dit is een goed plan.. tot wanneer is de inschrijf periode?
__________________
Ooit. Dan.
Met citaat reageren
Oud 11-05-2003, 09:55
Scooter B0y
Avatar van Scooter B0y
Scooter B0y is offline
als dit met zoveel personen door gaat.....

niet
Met citaat reageren
Oud 11-05-2003, 10:11
Vaag mannetje
Vaag mannetje is offline
zoiets kan je beter helemaal zelf doen..

maar dan moet je wel alle kennis erover hebben... heb je het niet? Leer het of begin er niet aan.
Met citaat reageren
Advertentie
Reageren


Regels voor berichten
Je mag geen nieuwe topics starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Spring naar


Alle tijden zijn GMT +1. Het is nu 19:35.