Visualizzazione risultati 1 fino 4 di 4

Discussione: Codice tipo bbcode?

  1. #1
    Guest

    Question Codice tipo bbcode?

    ciao a tutti...
    inizio come fanno in molti,ovvero con la frase "premetto che non sono molto pratico di php...anzi so poco e niente"...

    Diciamo che il mio recente percorso da autodidatta (in realtà per ciò che faccio io il php non mi serve molto) si basa su qualche piccola base ma ho buone capacità di apprendimento

    spero che voi siate clementi con me...

    Finito il prologo arrivo al dunque.
    In un piccolo sito (che uso io e altri amici solo per raccogliere i collegamenti ad altri siti) ho trovato la necessità di inserire un piccolo guestbook (per degli annunci generali che ci dobbiamo mandare)(siamo tutti sparsi per l'italia)...

    ma la mia voglia di fare mi ha spinto a cercare di crearvi una specie di bbcode, per esser chiaro uno script(?) che muti
    [IMG]url immagine[/IMG] in <img src=url immagine>

    il comando che uso è str_replace

    applicato piu o meno così:

    $messaggio = str_replace('[IMG]','<img src=',$messaggio);
    $messaggio = str_replace('[/IMG]','>',$messaggio);


    che per quanto improrpio possa esser l'uso di str_replace ottiene un buon risultato...

    purtroppo so che non è il cosice giusto nel momento in cui voglio fare altri codici...
    esempio
    Codice PHP:
    da [url=www.sito.it]CLICCA QUI[/url] a <a href=www.sito.it>CLICCA QUI</a>
    oppure
    Codice PHP:
    da [url]www.sito.it[/url] a <a href=www.sito.it>www.sito.it</a>
    insomma ho difficoltà nel creare i codici utilizzando str_replace!!!
    dunque ad intuito capisco che forse è il comando errato eforse dovrei usare qualcosa tipo preg_replace...

    ma come??????

    Qualche anima pia sa indicarmi la retta via?


    ps,percaso avete qualcosa da farmi leggere e consultare?qualcuno che già si è cimentato nell'impresa?

  2. #2
    Guest

    Predefinito

    Ti posto una funzione che racchiude le principali funzioni del bbcode:
    Codice PHP:
    <?php
    function bbcode($testo) {
    $cerca_codice= array(
    '/\[b\](.*?)\[\/b\]/is',
    '/\[i\](.*?)\[\/i\]/is',
    '/\[u\](.*?)\[\/u\]/is',
    '/\[url\](.*?)\[\/url\]/is',
    '/\[img\](.*?)\[\/img\]/is',
    '/\[url\=(.*?)\](.*?)\[\/url\]/is'
    );
    $sostituisci_codice = array(
    '<b>$1</b>',
    '<i>$1</i>',
    '<u>$1</u>',
    '<a href=$1 target=blank>$1</a>',
    '<img src=\'$1\' />',
    '<a href=$1 target=blank>$2</a>',
    );
    $testo= preg_replace ($cerca_codice, $sostituisci_codice, $testo);
    return
    $testo;
    }
    ?>
    Per usarla fai qualcosa tipo:
    Codice PHP:
    <?php
    $testo_in_input
    = bbcode($testo_in_input);
    ?>
    Avresti trovato topic simili con una ricerca

  3. #3
    Guest

    Predefinito

    Già ti ha suggerito gabryhacker, comunque str_replace fa il replace di una stringa fissa, in questo caso hai bisogno di usare i pattern perché le stringhe da sostituire cambiano.

    In breve puoi avere
    pippo
    come puoi avere
    giggio

    Se non è fissa ci vuole preg_replace (che fa uso delle reg_ex).

  4. #4
    Guest

    Predefinito

    Ho provato a fare ricerche sull'argomento con google e stesso qui nel forum (in "how-to/..")...ma appunto non essendo troppo pratico nel campo non ho trovato risposte soddisfacenti...

    Invece ora mi ritengo moooooolto soddisfatto (e grazie, t'hanno incollato il codice esatto!XD)...

    Grazie mille, lo leggo,lo uso, lo interpreto, lo rielaboro, lo capisco e vi faccio sapere...

    Ma se il topic è "di troppo" chiudete pure!

    Grazie mille ancora...


    Piffo.

    OK confermo tutto perfetto! Grazie mille per la velocità e precisione!!



    Ciao ciao!


    Piffo...
    Ultima modifica di svacant : 25-03-2009 alle ore 11.16.30 Motivo: Up consecutivo - Usa il tasto edita

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •