Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    62

    Tradurre "enter" in "</ br>" da un textarea.

    Ho un textarea a un utente che ci scrive dentro del testo...

    Prima di mettere nel DB il testo che è stato scritto, vorrei tradurre tutti gli "enter" (che fa l'utente per andare accapo), nel tag "</ br>"; in questo modo inserirei nel DB il testo semplice più l'HTML, e quando lo rileggo dal DB per stamparlo nel DIV, è formattato correttamente.

    Quando però ho bisogno di rileggerlo dal DB per visualizzarlo nel textarea, vorrei riconvertire le "< /br>" in "enter", in modo da rendere il tutto di nuovo editabile.


    Consigli?

    grazie.

  2. #2
    Se sul server hai php, ti baster&agrave;, nel momento in cui effettui l'echo della stringa, utilizzare la funzione nl2br() ,
    e non utilizzarla quando fai l'echo nella textarea per l'edit.
    Nel DB devi memorizzare la stringa originale, quella con gli "enter"

    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    62
    Ciao

    ho provato questa funzione, però questa traduce gli \n in
    e il problema è che a quanto pare, io nel db gli \n non li inserisco proprio.

    L'inserimento dei testi viene fatto dall'utente con un textarea, poi il contenuto del textarea viene inviato via GET a un webservice che fa la INSERT INTO, ma non vengono inseriti gli \n

    grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    62
    Forza guys! :-) non mi abbandonate!

    Come riesco a parsare una textarea al fine di beccare gli "enter" e tradurli nel tag "
    "?

    A meno che non c'è un altro modo più intelligente, purtroppo la funzione segnalata non va bene per il mio caso!

    GRAZIE!

  5. #5
    secondo me, devi cambiare approccio e salvare il testo MODIFICATO in HTML:

    invii il testo, lato server fai:

    $testo = htmlentities($_GET['testo'], ENT_QUOTES, "UTF-8");
    $testo = nl2br($testo);

    $query = "INSERT INTO Tabella VALUES('$testo')";
    I DON'T Double Click!

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    62
    ciao

    per leggere il contenuto del textarea sto usando il seguente codice javascript perchè mi è sembrato il più compatibile fra i vari browser:

    document.getElementById("textareaid").value

    E' corretto?

    Comunque per fare un test, ho fatto stampare il contenuto del textarea (modificato e con i ritorni a capo) in un alert, e nell'alert il testo me lo visualizza a capo...

    Poi ho provato a inserire il tuo codice PHP poco prima della insert, ma non crea i tag html!

    Possibile che abbia sbagliato qualcosa nel javascript? Però nell'alert si accorge che ci sono ritorni a capo...bho!


    A sto punto mi chiedo se javascript sta correttamente inviando nel GET il carattere di ritorno a capo, oppure se il PHP lo sta interpretando bene.

    Grazie ancora!

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    62
    Ho fatto un test usando il "replace"e sembra andare; adesso lo implemento e vediamo come si trova immerso in tutto il resto del codice!

    var trimmed = document.getElementById('idt1').value.replace(/\n+/g, '
    ') ;

    dove idt1 è il textarea

  8. #8
    Originariamente inviato da jackme
    Poi ho provato a inserire il tuo codice PHP poco prima della insert, ma non crea i tag html!
    Ma l'hai modificato con i nomi dei tuoi campi?

    A sto punto mi chiedo se javascript sta correttamente inviando nel GET il carattere di ritorno a capo, oppure se il PHP lo sta interpretando bene.
    Quello che mi chiedo io invece è sapere perché li mandi in GET e non in POST...
    I DON'T Double Click!

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    62
    Ottima domanda!

    Uso questo sistema che ho trovato da qualche parte sul web prima di iniziare:

    http.open('get', baseAddress + 'getdbtext.php?m=h');
    http.onreadystatechange = handleResponse;
    http.send(null);

    Poi mi prendo la risposta e me la parso.
    Grazie

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.