2012-06-10 1 views
0

Я хочу загрузить файл с помощью клиентского приложения C# и веб-службы Nusoap. Как я могу это сделать? Я использую Nusoap webservice для вставки в базу данных, но для загрузки файлов у меня нет никакой идеи. Пожалуйста, помогите мне. Спасибо.Загрузить zip-файл от Nusoap в PHP и C#

ответ

2

Поскольку у меня нет опыта работы с NuSOAP, я отвечу, насколько я знаю, загрузку файла на сервер с PHP, без использования NuSOAP.

Следующий код будет POST содержание данного файла на странице PHP, как если бы оно было отправлено через стандартную HTML-форму.

public void UploadFile(string path) { 
    WebClient wc = new WebClient(); 
    wc.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); 
    Int64 numBytes = new FileInfo(path).Length; 
    FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read); 
    BinaryReader br = new BinaryReader(fs); 
    Byte[] data = br.ReadBytes(Convert.ToInt32(numBytes)); 
    br.Close(); 
    fs.Close(); 
    wc.UploadData("http://127.0.0.1/upload.php", "POST", data); 
} 

Редактировать: Вот PHP, который я использовал для этого некоторое время назад. Это потенциально небезопасно и всегда будет перезаписывать тот же файл каждый раз, когда загружается новый. Вы могли бы попытаться выполнить некоторую динамику в этом, наряду с некоторыми проверками файлов для безопасности ... но вы также должны иметь возможность использовать модифицированный PHP-файл, предназначенный для стандартных загрузок (из веб-формы).

<?php 
    $fp = fopen('snap.jpg', 'wb'); 
    fwrite($fp, file_get_contents('php://input')); 
    fclose($fp); 
?> 
+0

Привет и спасибо за ваш ответ. Но что такое content.php? Это похоже на любую форму загрузки или нет? –

+0

Можете ли вы мне помочь загрузить файл в PHP? –

+0

Извините, я спал. Я отредактировал свой ответ с PHP, который я использовал для хранения файла. Обратите внимание, что есть более надежные и лучшие способы сделать это. – Spooky