premetto che sono neofita.
ho la necessita di fare degli upload di piccoli file di testo in maniera automatica.
attualmente utilizzo uno script (sul client) che apre una sessione ftp e fa l'upload dei file.
Il problema è che a volte mi trovo dietro firewall che bloccano l'ftp.
volevo quindi sostiure lo script con uno che faccia upload via http ma senza utilizzare un form con post cioè in modo non interattivo.
Mi sembra di aver capito che con le librerie curl si può fare.
qualcuno mi può aiutare?
grazie
non avendo avuto alcun riscontro mi viene un dubbio:
a) Il quesito è troppo banale ..... e debbo cercare in rete meglio
b) il problema è troppo difficile ...... e rinuncio all'idea
c) ho sbagliato il luogo in cui postare ........ ed allora dove?
in rete ho torvato alcuni script...
ma il risultato è sempre
Failed to open/read local data from file/application
allego lo script php
sospetto che il problema sia nell'impostare il path assoluto sul server... ma no ho idea di come fare"!!
Codice:
<?php
// preparo l'array che conterrà i dati da inviare via POST
// in questo caso c'è solo il file da trasmettere
$dati_post['file_dati'] = "@C:\dati.txt";
// inizializzo la sessione CURL
$ch = curl_init();
// imposto l'URL dello script destinatario
curl_setopt($ch, CURLOPT_URL, "http://grabber08.altervista.org/test/destinatario.php" );
// indico il tipo di comunicazione da effettuare (POST)
curl_setopt($ch, CURLOPT_POST, true );
// indico i dati da inviare attraverso POST
curl_setopt($ch, CURLOPT_POSTFIELDS, $dati_post);
// specifico che la funzione curl_exec dovrà restituire l'output
// prodotto dall'URL contattato (destinatario.php)
// invece di inviarlo direttamente al browser
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// eseguo la connessione e l'invio dei dati e salvo in
// $postResult l'output prodotto dall'URL contattato
$postResult = curl_exec($ch);
// se ci sono stati degli errori mostro un messaggio esplicativo
if (curl_errno($ch)) {
print curl_error($ch);
}
// chiudo la sessione CURL
curl_close($ch);
// mostro l'output prodotto da destinatario.php
echo $postResult;
?>