Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: funzione replace

  1. #1

    funzione replace

    Salve a tutti, avrei bisogno del vostro aiuto.
    Sto realizzando un sistema di messaggistica tipo forum.
    Ho già realizzato la funzione per poter inserire le faccine all'interno dei messaggi (sostituendo, tramite la funzione replace, al simbolo della faccina, il percorso dell'immagine da visualizzare).

    codice:
    messaggio = Replace(messaggio,":-)","[img]percorso_immagine.gif[/img]")
    Adesso vorrei implementare anche una funzione di quote e vorrei farla visualizzare a monitor in questo modo:

    codice:
    <div class='quotetop'>QUOTE(nick_utente_quotato &#064; data_messaggio_quotato)</div>
    <div class='quotemain'>messaggio_da_quotare</div>
    La mia domanda è: come faccio a far sostituire il codice sopra (aggiornato in modo dinamico con nick_utente_quotato, data_messaggio_quotato e messaggio_quotato) tramite la funzione replace se all'interno del messaggio che deve visualizzare il quote leggo questo:

    codice:
    
    
    Quote Originariamente inviata da nick_utente_da_quotare, data_messaggio_da_quotare
    messaggio_da_quotare
    come lo sostituisco?

    Sono due giorni che mi sto scervellando.
    Spero qualcuno di voi possa aiutarmi.
    Vi ringrazio anticipatamente.
    Saluti

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    47
    forse puoi sostituire
    con <blockquote> (ed ovviamente il rispettivo
    con </blockquote>)

    ciao

  3. #3
    Grazie per la tua risposta caio.
    Non mi riferivo a come rappresentarlo sullo schermo in modo diverso dal testo del messaggio, per questo ci pensano già i fogli di stili <div>.
    Io intendevo come riuscire a estrapolare dal messaggio tutto quello che sta nel
    Quote Originariamente inviata da ......
    ....
    e farlo inserire tra i ripsettivi fogli di stile <div>....</div> per essere formattato diversamente dal resto del messaggio.
    Spero di essere stato più chiaro.

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    47
    ok scusa l'incomprensione.
    Dunque ti serve il testo che sta tra il "tag" [QUOTE....] e il tag [/quote]??

  5. #5
    Non preoccuparti caio, mi rendo conto di non essere stato il massimo della chiarezza nel primo post.
    Si, principalmente il testo che sta tra i due tag
    codice:
    [quote...]...[/quote]
    e, se fosse possibile, anche il nick e la data che stanno all'interno del primo quote (magari recuperandoli in una stringa a parte quest'ultimi):

    [quote=nick_utente_da_quotare, data_messaggio_da_quotare]

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    47
    il metodo migliore dovrebbe essere quello di usare le RegExp per recuperare i dati, però essendo abbastanza complesse ti consiglio di documentarti.
    guida RegExp

    Altrimenti potresti riuscire a recuperare i dati più o meno così

    esempio:

    stringa = "[QUOTE nick=prova] prova prova prova prova [/QUOTE]"

    posStartA = InStr(stringa,"[QUOTE")
    posStartB = InStr(posStartA+1,stringa,"]")

    A questo punto in posStartB hai la posizione (numero del carattere) della chiusura del tag

    posEnd2 = InStr(stringa,"
    ")

    e qui ha il numero di carattere della fine del testo.
    Dovrebbe bastare, a questo punto, una cosa simile

    Testo = Mid(stringa,PosStartB+1,PosStartB-PosEnd+1)

    e più o meno la stringa dovrebbe risultare corretta.

    Ripeto, con le RegExp viene meglio....

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    47
    uff mi si è sballato il codice a causa dei tag di quote che ci ho inserito

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2003
    Messaggi
    47
    la parte centrale del messaggio di prima mi si è sballata.
    Doveva essere più o meno così:

    A questo punto in posStartB hai la posizione (numero del carattere) della chiusura del tag

    posEnd2 = InStr(stringa,"[/....]")
    Dove al posto dei puntini c'è la parola QUOTE

    ciao

  9. #9
    Grazie Caio.
    Credo che studiando bene l'esempio che mi hai postato riuscirò a risolvere il mio problema. Mi metto subito a implementare e adattare il codice che mi hai fornito.
    Quando avrò finito ti farò sapere e se tutto funzionerà alla perfezione posterò il codice finale, semmai dovesse servire a qualcun'altro.
    Per il momenti ti ringrazio molto per avermi fornito il materiale di studio.

    Saluti

  10. #10
    grazie ai suggerimenti di caio ho realizzato questa piccola funzione che riesce a estrarre il contenuto del messaggio quotato.

    codice:
    <%
    function recupera_messaggio_quotato(stringa)
    	pos_start_a = inStr(stringa, "[quote")
    	pos_start_b = instr(pos_start_a+1,stringa,"]")
    	pos_end     = instr(stringa, "[/quote]")
    	messaggio   = mid(stringa,(pos_start_b+1),(pos_end-pos_start_b-1))
    	recupera_messaggio_quotato = messaggio
    End function
    
    stringa = "
    
    Quote Originariamente inviata da nick_utente, data_messaggio
    messaggio da inserire
    " Response.Write recupera_messaggio_quotato(stringa) %>
    adesso dovrei poter recuperare all'interno di un'altra variabile anche il 'nick_utente' e 'la data_messaggio' presenti all'interno del primo quote, prima che venga chiuso il tag.
    poi dovrei trovare un modo per farli sostituire al momento dell'inserimento nel db con il relativo codice html per visualizzarli correttamente.
    Per il momento ringrazio nuovamente caio che mi ha già dato un grosso aiuto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.