Visualizzazione risultati 1 fino 7 di 7

Discussione: salvare testo da TEXTAREA

  1. #1
    Guest

    Question salvare testo da TEXTAREA

    Ho necessita' di salvare il contenuto di una TEXTAREA in un file *.txt.

    Il problema solo le andate a capo. Ho gia' provato di tutto (da nl2br, a cambiare i caratteri "\n" o CHR(13), ..., nel campo prima del salvataggio su file, ....).

    Il *.TXT viene salvato in modo corretto ma visivamente in modo errato.
    Mi spiego. Trasformando le andate a capo in altro carattere (ad esempio con nl2br), nel file *.TXT viene salvato su righe diverse esteticamente, ma se poi vado a prendere il contenuto (ad esempio con la funzione PHP file() ), le righe diverse sono considerate una unica.
    Il problema sorge se modifico a mano il *.TXT. In questo caso, senza modificare le andate a campo ma che so cambiando una lettera e poi salvando, il gruppo di righe che prima considerava (giustamente) una riga unica, ora le prende separate (sempre la funzione ad es. PHP file() ).

    Ora c'e' un modo per scrivere il testo di u na TEXTAREA su una riga sola in un file *.TXT ? Ovviamente inserendo un carattere "jolly" che identifichi le andate a capo (e per questo va bene la funzione nl2br).

    GRAZIE

  2. #2
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    Dovresti provare a prendere il file con la stessa funzione che usi per intercettale il tasto invio.

    Altrimenti se il file txt non hai la necessita di visualizzarlo cosi come, ma solo con lo script ti consiglio di inserire i <br> nel file quando servono.
    Ultima modifica di sevenjeak : 06-01-2009 alle ore 21.08.35

    Sevenjeak
    Software developer and much more

  3. #3
    Guest

    Predefinito

    Ho provato di tutto per intercettare le andate a capo e cambiarle con un carattere scelto da me (che so "~") o un <br>.

    Usando la funzione "file()" di PHP mi pesca bene il testo inserito nella TEXTAREA (comprese le andate a capo).

    Pero' se io apro il *.TXT dove ho salvato la TEXTAREA, mi trovo delle andate a capo. E questo mi crea un bel problema se poi vado a salvare il TXT che ho aperto manualmente, perche' dopo il salvataggio (manuale) le andate a capo che prima non considerava (con la funzione file() di PHP) ora le considera.

    In sostanza non riesco a capire che carattere usi la TEXTAREA per indicare che c'e' un'adata a capo, altrimenti potrei eliminare quel caratte (che so con un " $testo = str_replace(carattere_speciale,"",$testo) ".

  4. #4
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,306

    Predefinito

    a parte il consiglio astruso di Sevenjeak, ci sono un sacco di variabili in campo qua che devi tenere sott'occhio.

    Mettiamo che tu salvi il testo della textarea direttamente su file, le righe dovrebbero essere delimitate dal carattere \n. In teoria, ma sempre meglio controllare con editor esadecimale

    Una volta salvate, quando scarichi il file via ftp, possono avvenire due cose: se lo trasferisci in modalita' binaria, ti ritrovi di nuovo con \n, se lo trasferisci in modalita' ascii il tuo client ftp potrebbe cambiarli in qualcos'altro, solitamente (a meno che tu non abbia uno strano sistema) \n\r. Lo stesso potrebbe avvenire in upload.

    Quando apri il file con un editor, l'editor potrebbe farti vedere i ritorni a capo nel formato in cui sono o nel formato del tuo sistema operativo, per cui potresti vedere righe in piu' dove non ci sono, o righe in meno.

    Presta attenzione a tutti questi dettagli, e dovresti poter modificare il file senza problemi. Personalmente suggerisco trasferimento binario, ed un editor con un minimo di serieta', da notepad2 in su.

  5. #5
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    Citazione Originalmente inviato da dreadnaut Visualizza messaggio
    a parte il consiglio astruso di Sevenjeak
    In che senzo astruso?

    Sevenjeak
    Software developer and much more

  6. #6
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,306

    Predefinito

    astruso (agg). Difficile a capirsi; incomprensibile, enigmatico, ostico, ermetico, contorto, complicato. Sinonimi: arzigogolato, complicato, difficile, enigmatico, ermetico, incomprensibile, indecifrabile.
    stavi suggerendo di usare una funzione javascript per aprire un file in php...

  7. #7
    Guest

    Predefinito

    GRAZIEEEEEEEEEEEEEEEEEEEEE dreadnaut!

    Guardando il file con HexEditor (editor di pochi kb per win95 ma che funziona senza installazione) ho notato che la risultante della TEXTAREA ha una coppia di andate a capo chr(13).chr(10).

    Per sistemare ho fatto un semplice:

    str_replace (chr(13).chr(10), carattere_mio, $testo);

Regole di scrittura

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