Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    16

    Scrittura su file errata

    Ho un problema su una scrittura su file che non capisco proprio perchè agisce cosi.

    Io ho 2 file, uno che devo aprire in lettura ed uno in scrittura (con append).
    Il mio programma deve leggere le righe del primo, copiarle alla fine del secondo e poi devo inserire io, su 3 righe diverse, le stringhe che mi arrivano da un database.

    Codice PHP:
    if (!$lettura fopen("nomefile","r"))
        { echo 
    "Spiacente, non posso aprire il file in lettura"; }

    elseif (!
    $scrittura fopen("nomefile2","a"))
        { echo 
    "Spiacente, non posso aprire il file in scrittura"; }

    else {
    //qui copio il file
    while(!feof($lettura))
            {
            
    $linea fgets($lettura);
            
    fwrite($scrittura$linea);
        }
    }

    //e qui aggiungo le righe del database
    $linea $resultSeg['ID']." - ".substr($resultSeg['nomi'], 020)." - ".substr($resultSeg['testo'], 040)."\n";
    fwrite($scrittura$linea);
    fwrite($scrittura$linea);
    fwrite($scrittura$linea); 
    Ora, la prima parte funziona perfettamente, la seconda invece che creare 3 righe, scrive le cose una di seguito all' altra.
    Ho provato a togliere la prima parte e mettere $linea = "Provo \n ad \n andare \n a \n capo \n"; ed anche in questo caso me la scrive tutta di seguito.

    Non interpreta quindi il \n come un andata a capo (quando leggendo ogni guida dovrebbe farlo.....).
    La cosa che mi sa strana è che se gli faccio leggere invece un altro file col fgets lo copia perfettamente con pure le andate a capo... Quindi, se legge un andata a capo da un file funziona, se gliela do io col \n no....

    Motivo?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    16
    Come non detto, risolto, era un errore direi proprio di apache visto che l'ho provato su un altro pc e funziona perfettamente.

    Dopo provo a reinstallare apache su questo pc perchè non ha senso che uno lo interpreti ed uno no...

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.