Archief - algoritme : Wysiwyg-editor op webpagina

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.

Bertold

Legacy Member
Hoe maak je voor u site (liefst met php) zo'n soort html-editorke lijk daj ier op dit forum hebt. voor bvb vet te zetten of smileys te zetten door op de smiley te klikken? Heb al wa gezocht en kvind iets van UBB maar keb geen flauw idee wat dat inhoud

help mij a u b

CyPhErIoN

Legacy Member
wysiwyg

What you c is what you get :)

Normaal bestaan er toch templates van?
Kun je downen en costumizen naar je eigen goesting.
Zijn trouwens enkele goede tutorials te vinden

http://www.pspad.com/

Bertold

Legacy Member
maar kzoek geen voor mij zelf é maar om te integreren in mijn website, zodat de gebruikers gemakkeljik kunnen smileys toevoegen of hunnen tekst opmaken.

CyPhErIoN

Legacy Member
ik zoek ff mee voor je.
Kben er zeker van dat het online te vinden is om te implementeren in je site

Obliv`

Legacy Member
die smilies implementeren als je erop klikt wordt meestal gedaan door javascript
er wordt dan de gewenste code (vb ;) of :) ) aan de tekst toegevoegd of ingevoegd.
iets int vet zetten doe ja door de code vet

als ge dan die tekst weergeeft in uw thread:
ge leest uw bericht uit uw database en ge zet da in een variabelen
Code:
bericht = objRecordSet("Message")
bericht = replace(bericht, ':)', 'images/smilies/smile.gif')
... vervang alles codes door de gif's
bericht = replace(bericht, '[b]', '<b>') om int vet te zetten
bericht = replace(bericht, '[/b]', '</b>') om int vet te zetten
enz enz

Bertold

Legacy Member
kan je ff uitgebreider uitleggen en concreter want ik kan niets van javascript
:$

vooral dat eerste stukje.
als je klikt op die smiley om dat in de tekst te zetten

Obliv`

Legacy Member
bt belgium zei:
kan je ff uitgebreider uitleggen en concreter want ik kan niets van javascript
:$

ja euh, ik ook niet ;) (of toch erg weinig)

bekijk gewoon de source code van sites die zulke dinge gebruiken en leer daar wat uit

Spacy2003

Legacy Member
BBcode is what you mean, wat je moet doen is de text die de user ingeeft
controleren op bepaalde volgordes van text en dat vervangen door (x)html tags.

PHP:
//[b]text[/b] <-- dit wordt bold
//[i]text[/i] <-- dit wordt italic

function bbcode($userInput)
{
    //we maken dus een array met alle tags die vervangen moeten worden
    $ubb = array(
      '[b]',
      '[/b]',
      '[i]',
      '[/i]'
    );
    
    //en we maken een array waarin alle tags vervangen moeten worden
    $html = array(
      '<b>',
      '</b>',
      '<i>',
      '</i>'
    );

    //nu vervangen we alles, dus de array $ubb wordt vervangen door de array $html en dit alles wordt in $userinput geplaatst
    $userInput = str_replace($ubb, $html, $userInput);

         //nu print je die tag netjes terug op zijn plaats
	    print $userInput;
}
Om deze functie op te roepen doe je simpel weg bbcode("text"); , text kan even goed een variabele zijn. (bbcode($text);)
Smilies werken op dezelfde manier.

Waarschijnlijk zal je hier niet veel van verstaan, maar een kant en klare versie
om "gemakkelijk" te integreren ga je echt niet vinden.

grtz spacy

Bertold

Legacy Member
wow merci :) das al nen grote stap :) kunt ge ook in die $html array een <img> tag ofzo zetten? voor die smileys dan?

Nu moetek alleen nog vinden hoe dat ik die code moet inserten als er op de smiley wordt geklikt of op et woordje vet.
als iemand hier meer van weet, houdt u niet in ;)

Spacy2003

Legacy Member
Obliv` zei:
ja euh, ik ook niet ;) (of toch erg weinig)

bekijk gewoon de source code van sites die zulke dinge gebruiken en leer daar wat uit

Om hier even verder op in te gaan,
op de plaats van de bold text komt de naam van je textbox en in deze zal dan de tag komen.
Deze functie roep je als volgt op javascript:insert_text('[ b ]','[ /b ]')
of alleen voor een smilie javascript:insert_text(':)','')

function insert_text(open, close){
msgfield = (document.all) ? document.all.req_message : document.forms['post']['TXTBOXNAME'];

// IE support
if (document.selection && document.selection.createRange){
msgfield.focus();
sel = document.selection.createRange();
sel.text = open + sel.text + close;
msgfield.focus();
}

// Moz support
else if (msgfield.selectionStart || msgfield.selectionStart == '0'){
var startPos = msgfield.selectionStart;
var endPos = msgfield.selectionEnd;
msgfield.value = msgfield.value.substring(0, startPos) + open + msgfield.value.substring(startPos, endPos) + close + msgfield.value.substring(endPos, msgfield.value.length);
msgfield.selectionStart = msgfield.selectionEnd = endPos + open.length + close.length;
msgfield.focus();
}

// Fallback support for other browsers
else{
msgfield.value += open + close;
msgfield.focus();
}

return;
}

Obliv`

Legacy Member
bt belgium zei:
wow merci :) das al nen grote stap :) kunt ge ook in die $html array een <img> tag ofzo zetten? voor die smileys dan?

Nu moetek alleen nog vinden hoe dat ik die code moet inserten als er op de smiley wordt geklikt of op et woordje vet.
als iemand hier meer van weet, houdt u niet in ;)

turlijk, ge kunt zoveel in een array steken als je wil eh, zolang de volgordes maar kloppen vb: ubb[5] = ;) dan is xhmlt[5] = images/smilies/knipoog.gif

kzal is ff rondkijken of ik nog iets van die smilie toestanden terug kan vinden

groeten

Bertold

Legacy Member
oké die bold en italic gaat maar voor een smiley lukt et niet :$

PHP:
function bbcode($userInput)
{
    //we maken dus een array met alle tags die vervangen moeten worden
    $ubb = array(
      '[b]',
      '[/b]',
      '[i]',
      '[/i]',
	  ':-)'
    );
    
    //en we maken een array waarin alle tags vervangen moeten worden
    $html = array(
      '<b>',
      '</b>',
      '<i>',
      '</i>',
	  '<img scr="smile.gif">'
    );

    //nu vervangen we alles, dus de array $ubb wordt vervangen door de array $html en dit alles wordt in $userinput geplaatst
    $userInput = str_replace($ubb, $html, $userInput);

         //nu print je die tag netjes terug op zijn plaats
        print $userInput;
}

en dan heb ek wa verder
PHP:
bbcode(":-)");
die smile.gif staat er dus dat is de fout niet. er komt geen parse error, er verschijnt gewoon niets.
waar zit mijn fout? :unsure:


EDIT laat maar :doh: khad img scr getypt ipv img src :$ :x

Bertold

Legacy Member
javascript:insert_text('[ b ]','[ /b ]')
en waar moet dit komen? in de link van de img? :s

Spacy2003

Legacy Member
bt belgium zei:
javascript:insert_text('[ b ]','[ /b ]')
en waar moet dit komen? in de link van de img? :s

yup (wel de spaties weghalen tussen de bold tags, anders wou Vbulletin het niet aanvaarden :p )
dus: <a href="javascript:insert_text('[ b ]','[ /b ]')"><img src="bold.gif"/></a>

Bertold

Legacy Member
<a href="#" javascript:insert_text(':-)')><img border="0" src="smile.gif"></a>

kheb dit maar tis waarschijnlijk niet goed :p
want et werkt nie

Spacy2003

Legacy Member
bt belgium zei:
<a href="#" javascript:insert_text(':-)')><img border="0" src="smile.gif"></a>

kheb dit maar tis waarschijnlijk niet goed :p
want et werkt nie

<a href="javascript:insert_text(':-)','')"><img border="0" src="smile.gif"/></a>

Bertold

Legacy Member
en et javascript in de head of in de body?

sorry maar kben een absolute noob voor javascript

Spacy2003

Legacy Member
bt belgium zei:
en et javascript in de head of in de body?

sorry maar kben een absolute noob voor javascript

Maakt niet uit, ik had bijvoorbeeld een aparte *.js file en dat zo in de head
geinclude met: <script src="insert.js" type="text/javascript" ></script>

Om het ietswat overzichtelijk te houden ;)
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