Torna indietro   AlterVista | Spazio web gratis, hosting free php mysql > Supporto > Basi per siti web

Rispondi
 
LinkBack Strumenti discussione Modalità visualizzazione
  #1 (permalink)  
Vecchio 07-11-2009, 13.13.17
Neofita
 
Data registrazione: 10-12-2008
Messaggi: 5
Predefinito BBcode non funzionano quando clicco su "invia" della textarea

Salve, allora sto creando un piccolo sistema per inviare i commenti nel mio sito internet e volevo inserire nel textarea anche la possibilità di mettere i bbcode.

Il problema è questo: quando clicco sui bottoni dei bbcode me li riporta nel textarea, solo che nel momento in cui scrivo qualsiasi cosa nel textarea, i bbcode non funzionano più, cioè quando clicco non mi riporta nulla.
Sapreste dirmi dove sbaglio?

Ecco il codice :
Codice HTML:
<input type="button" value="link" onclick="document.theform.commento.innerHTML+='[a][/a]'">
<input type="button" value="codice" onclick="document.theform.commento.innerHTML+='[code][/code]'">
<input type="button" value="grassetto" onclick="document.theform.commento.innerHTML+='[b][/b]'">
<input type="button" value="corsivo" onclick="document.theform.commento.innerHTML+='[i][/i]'">
<form method="post" action="#" name="theform">
<input type="hidden" value="<?echo $id;?>" name="idart" >
<input type="hidden" value="<?echo $titolo;?>" name="titart">
Email :<input type="text" value="" name="email"> <br>
Commento:<br><textarea rows=13 cols=60 name="commento"></textarea><br>
<input type="submit" value="Inserisci">
</form>
Rispondi citando
  #2 (permalink)  
Vecchio 07-11-2009, 16.04.02
L'avatar di zomer
Utente attivo
 
Data registrazione: 18-04-2009
Residenza: dietro le spalle di alemoppo
Messaggi: 354
Predefinito

bottone o immagine

Codice PHP:
 <img alt="Allienamento a sinistra" src="http://forum.it.altervista.org/images/bb/sn.bmp" value="left"  onclick="storeCaret('left')"
bbcode

Codice PHP:
var isMozilla = (navigator.userAgent.toLowerCase().indexOf('gecko')!=-1) ? true false;
var 
regexp = new RegExp("[\r]","gi");

function 
storeCaret(selec)
{
    if (
isMozilla)
    {
    
// Si on est sur Mozilla

        
oField document.forms['news'].elements['newst'];

        
objectValue oField.value;

        
deb oField.selectionStart;
        
fin oField.selectionEnd;

        
objectValueDeb objectValue.substringoField.selectionStart );
        
objectValueFin objectValue.substringoField.selectionEnd oField.textLength );
        
objectSelected objectValue.substringoField.selectionStart ,oField.selectionEnd );

    
//    alert("Debut:'"+objectValueDeb+"' ("+deb+")\nFin:'"+objectValueFin+"' ("+fin+")\n\nSelectionné:'"+objectSelected+"'("+(fin-deb)+")");

        
oField.value objectValueDeb "[" selec "]" objectSelected "[/" selec "]" objectValueFin;
        
oField.selectionStart strlen(objectValueDeb);
        
oField.selectionEnd strlen(objectValueDeb "[" selec "]" objectSelected "[/" selec "]");
        
oField.focus();
        
oField.setSelectionRange(
            
objectValueDeb.length selec.length 2,
            
objectValueDeb.length selec.length 2);
    }
    else
    {
    
// Si on est sur IE

        
oField document.forms['news'].elements['newst'];
        var 
str document.selection.createRange().text;

        if (
str.length>0)
        {
        
// Si on a selectionné du texte
            
var sel document.selection.createRange();
            
sel.text "[" selec "]" str "[/" selec "]";
            
sel.collapse();
            
sel.select();
        }
        else
        {
            
oField.focus(oField.caretPos);
        
//    alert(oField.caretPos+"\n"+oField.value.length+"\n")
            
oField.focus(oField.value.length);
            
oField.caretPos document.selection.createRange().duplicate();

            var 
bidon "%~%";
            var 
orig oField.value;
            
oField.caretPos.text bidon;
            var 
oField.value.search(bidon);
            
oField.value orig.substr(0,i) + "[" selec "][/" selec "]" orig.substr(ioField.value.length);
            var 
0;
            for(
0in++)
            {if(
regexp.test(oField.value.substr(n,2)) == true){r++;}};
            
pos selec.length r;
            
//placer(document.forms['news'].elements['newst'], pos);
            
var oField.createTextRange();
            
r.moveStart('character'pos);
            
r.collapse();
            
r.select();

        }
    }

se non funziona:
prova qui...
__________________
CIao!
!!!DEBUG FAN CLUB!!! -
AUGURO A TUTTI DI AVERE TANTA CUNNU!!!!
Il posto migliore dove salvare i dati è il database

Ultima modifica di zomer : 07-11-2009 alle ore 16.06.08
Rispondi citando
Rispondi

Strumenti discussione
Modalità visualizzazione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks are Attivato
Pingbacks are Attivato
Refbacks are Disattivato



Tutti gli orari sono GMT +1. Adesso sono le 06.26.38.