SE vuoi salvarlo sul server l'header non c'entra più niente. L'header server solo per informare il browser sul tipo di file che si sta scaricando.Originariamente inviato da smurfro
Ciao a tutti.
Ho un codice php che tramite un ciclo mi genera un xml da una query mysql.
Il codice funziona e come output della pagina ho il mio bel xml strutturato.
Aggiungendo all'header la riga "header('Content-Disposition: attachment; filename=report.xml');
" riesco a scaricare il file xml senza che mi venga visualizzato.
Ora la domanda: cosa devo scrivere nell'header se voglio salvare il file sul server remoto in maniera del tutto invisibile invece di scaricarlo tramite browser?
Il mio scopo è scrivere quel file in una determinata cartella per poi farlo leggere a un'applicazione.
Grazie!
P.S. Ho letto i link che mi erano stati postati nel precedente topic ma non c'ho capito molto.
Potreste farmi un esempio? Purtroppo non so molto di php e non ho molto tempo di studiarmelo da zero...
Invece che mandarlo in output (quindi per esempio fare l'header e poi l'echo della stringa xml), devi salvarlo su filesystem.
In pratica puoi usare la funzione file_put_contents che ti chiede due soli parametri: l'indirizzo del file (per esempio "nome_cartella/nome_file.xml" e la stringa xml da salvare. La funzione si preoccupa da sola di creare il file se non esiste ancora o se già esiste di scriverci dentro la stringa che passi come secondo parametro (questa funzion èdisponibile solo da php5 in poi).
Gabriele
ps: chiaramente, se sei sotto ambiente linux, devi impostare i permessi di scritta alla cartella in cui scrivi il file

Rispondi quotando