2016-09-15 11 views
2

シェルスクリプトとPHPのCurlを使用して別のサーバーから別のサーバーにファイルをアップロードするにはどうすればよいですか?Curlを使用して別のサーバーから別のサーバーにファイルをアップロードするにはどうすればよいですか?

シェルスクリプトが保存されているサーバーにtxtファイルが保存されています。そのtxtファイルを別のサーバーの特定のフォルダにアップロードします。 2台のサーバーはすでに接続しています。 txtファイルのデータは1000行あります。

同じサーバーにファイルをインポートしても問題ありません。

PHP:

if (($handle = fopen($directory_root."filename.csv", "r")) !== FALSE){ 
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE){ 
     $sql = "INSERT INTO tablename(col1,col2,col3,col4,col5) 
       VALUES ('".mysql_escape_string($data[0])."', 
         '".mysql_escape_string($data[1])."', 
         '".mysql_escape_string($data[2])."', 
         '".mysql_escape_string($data[3])."', 
         '".mysql_escape_string($data[4])."')"; 
     $query = mysql_query($sql); 
    } 
    fclose($handle); 
} 

$ch = curl_init('http://example.com/'); 
curl_setopt_array($ch, array(
    CURLOPT_POSTFIELDS => array(
     'files[]' => '@/var/www/html/files/', 
    ), 
)); 
if (false === ($res = curl_exec($ch))){ 
    die("Upload failed: " . curl_error($ch)); 
} 

答えて

1

curl_setopt($ch, CURLOPT_POST,1);

'@/var/www/html/files/',を追加するには、ディレクトリです...ファイル

でなければなりません
関連する問題