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...
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.

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