Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Problema textarea

  1. #1
    Utente di HTML.it L'avatar di costi31
    Registrato dal
    Nov 2007
    Messaggi
    345

    Problema textarea

    Io ho in una pagina del mio sito, una textarea dove un utente scrive del testo e lo salva.
    Dopo ogni utente può vedere, in un'altra pagina il testo salvato da ogni utente e questo testo viene scritto in php, cioè lo associo a una variabile e poi uso
    Codice PHP:
    echo "$testo"
    Il problema è che quando uno salva il testo e schiaccia invio per andare a capo, lo fa ma solo se il testo viene mostrato in una textarea perchè usa "\n" per andare a capo. Il problema è che io mostrandolo con un echo, non va a capo nel testo, quindi per riassumere vorrei sapere qual'è la funzione, se c'è, in php per sostiuire "\n" con "
    " nel testo della variabile al momento della rappresentazione.

    PS: Non mi dite di usare un editor java che lo fa già in automatico come tinyMCE perchè non mi interessa e non mi piace.

  2. #2

    Re: Problema textarea

    Originariamente inviato da costi31
    vorrei sapere qual'è la funzione, se c'è, in php per sostiuire
    ...e perchè lo chiedi qui?

    Qui ti potrei rispondere: "hai provato il tag <pre>?"
    Il resto lo trovi nella sezione sezione del forum dedicata...
    Fantasupermegafavolipermeramagicultra irresistibili
    4 10 30 100 1001 personaggi insuperabili fantaincredibili ultraimpossibili iperterribili irresistibili!!!

    "... a quell'età ... bastava un dito per fare la pace ..."
    fotine

  3. #3
    Fatti spostare in PHP. Cmq, per la cronaca...PHP ha una funzione nata apposta per questa esigenza: nl2br() (new line to
    ). Le pressioni di invio non vengono considerate nel codice HTML, e questa funzione serve appunto a convertire i "ritorni a capo" in tag
    (o
    , nelle versioni di PHP più moderne, secondo XHTML). Ovviamente non è cmq molto "pulito" come testo, quindi ti consiglierei di usare una regexp per rimpiazzare ogni
    inserito da nl2br() in chiusura e apertura di paragrafo, quindi eliminare i paragrafi vuoti (dovuti a più pressioni di invio successive). Eccoti un es.:

    codice:
    $testo = nl2br($testo); // Trasformo i ritorni a capo in tag 
    
    $testo = preg_replace("/<br( \/)?>/i",'</p>
    
    ',$testo); // Rimpiazzo le occorrenze di 
     e 
     con altrettante chiusure e aperture di tag 
    
    
    $testo = preg_replace("/
    
    [ \r\n]*<\/p>/i",'',$testo); // Elimino tutti i paragrafi vuoti o contenenti solo spazi e/o ritorni a capo presenti
    echo $testo; // Stampo la variabile

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 © 2026 vBulletin Solutions, Inc. All rights reserved.