Archief - PHP : url's omvormen van ubb naar html lukt niet

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Fraggie

Legacy Member
Ik ben bezig met een ubb systeempje in te voeren in het news script. Wanneer ik echter url's wil omvormen krijg ik problemen met "
Stel dat ik dit ingeef in men input:
PHP:
[url="http://www.google.com"]Google[/url]
dan is het de bedoeling dat het omgevormd wordt naar HTML & zo in de db komt. Dit gebeurt met de functie: strip_ubb:

PHP:
function strip_ubb ($userInput) // Wat in de db komt, dus html
{
    $userInput = htmlentities($userInput, ENT_QUOTES);
/* [b] enz omvormen */

    // Overgebleven tags verwijderen
    $trans = array(
     "[b]" => "", "[/b]" => "",
     "[head]" => "", "[/head]" => "",
     "[sub]" => "", "[/sub]" => "",
     "="" => "=\"", ""]" => "\"]"
    );
    $userInput = strtr($userInput, $trans);
    
    // URL's maken
    $userInput = eregi_replace(
     "\\[url=\"([^\\[]*)\"\\]([^\\[]*)\\[/url\\]",
     "<a href=\"\\1\" target=\"_blank\">\\2</a>",
     $userInput
    );
/* rest functie */

Wanneer het script hier komt: $userInput = htmlentities($userInput, ENT_QUOTES);
wordt men input:
HTML:
[url=&quot;http://www.google.com&quot;]Google[/url]

Daarvoor dient de laatste lijn in de trans array: "=&quot;" => "=\"", "&quot;]" => "\"]"
Spijtig genoeg krijg ik dan dit als input terug van men funcie:
HTML:
[url=&quot;http://www.google.com"]Google[/url]
er is dus maar 1 " veranderd?!

0n3Liner

Legacy Member
je kan beter de UBB in de database zetten en dan naar HTML converteren op het moment de post weergegeven zal worden. Dan moet je bij het editen trouwens ook niet terug gaan omzetten naar UBB ;)

Fraggie

Legacy Member
Hier sta ik dan met men 2 grote functies :p.
Right, I'll give it a try.

maatje

Legacy Member
tzou wel makkelijker als je combineerde met javascript en ipv <b> te gebruiken ;)

Fraggie

Legacy Member
Ik had dus 2 functies, ubb & strip_ubb. Ik heb ubb laten vallen na de tip van 0n3Liner & gewoon opnieuw begonnen. Nu werkt het wel :) (mss typo in eregi_replace..).

Verder heb ik geen volrecht op de server & vermoed ik dat die HTML_BBCodeParser een exe is dat moet runnen op de serv? Dus dat kan ik al niet gebruiken (ik zou ook niet weten hoe je met die tar's moet werken). Waarom het wiel opnieuw uitvinden? Ik moet maar een paar UBB tags gebruiken en als ik men site vol steek met andermans scripts heb ik daar meer werk aan (begrijpen/aanpassen) dan dat ik het zelf doe. Plus de meeste UBB scripts dat ik vond waren oud en gebruikte contands tags zoals <i></i> <center></center>..
if you catch my drift

Thx for the help!

killgore

Legacy Member
nee

je kan pear packages gewoon downloaden :s, das meestal enkel wa php files hoor die pear-packages ;).

Als je php-install op jouw pc hebt, gewoon via cmd line naar php map gaan en dan volgend cmd:
pear install packagename

dan download en unpackt hij onmiddelijk :). Die unpackte pear php files kunde dan apart gaan gebruiken ;)!

btw: gebruik PREG ipv ereg :p.

Fraggie

Legacy Member
Azo, welja kdacht parser, dus een 'mod' voor php parser?
Preg gebruik ik voor de andere (simpele tags), maar het leek me beter om eregi te gebruiken, aangezien ik dat makkelijker kan.

killgore

Legacy Member
er is niet zo extreem veel syntaxis verschil tussen preg en ereg, ma preg is iets krachtiger en ook (tbh niet meer getest na php5) pak sneller als ereg normaal gezien.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan