Я пытаюсь загрузить файл на свой php-сервер с помощью java, но мой httprequest терпит неудачу каждый раз, когда я запускаю код, я не знаю, в чем его причина, сначала я подумал, что это может быть вызвана методом multipartEnttity, параметры которого я оставил пустой раньше, но теперь, после заполнения его та же проблема все еще ocurrs ....Загрузка файла в java через php
//this is my java code
String path="E:\\upload.txt";
HttpClient hc=new DefaultHttpClient();
hc.getParams().setParameter(CoreProtocolPNames.PROTOCOL_VERSION, HttpVersion.HTTP_1_1);
HttpPost hp=new HttpPost("http://localhost/shoolPHP/uploadFile.php");
File f=new File(path);
MultipartEntity me=new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
ContentBody cf=new FileBody(f);
me.addPart("userfile", cf);
hp.setEntity(me);
System.out.println("executing request" +hp.getRequestLine());
HttpResponse hr=hc.execute(hp);
HttpEntity he=hr.getEntity();
if(!(hr.getStatusLine().toString()).equals("HTTP/1.1 200 OK")){
System.out.println("Uploaded");
}
else{
System.out.println("Failed");
}
System.out.println(hr.getStatusLine());
if (he != null) {
System.out.println(EntityUtils.toString(he));
}
if (he != null) {
he.consumeContent();
}
hc.getConnectionManager().shutdown();
// это исправляется PHP код
<?php
$uploads_dir='/Home';
if(is_uploaded_file($_FILES['userfile']['tmp_name'])){
$dest=$_FILES['userfile']['name'];
echo "File" .$_FILES['userfile']['name'] ."uploaded file successfully to
$uploads_dir/$dest";
move_uploaded_file ($_FILES['userfile'] ['tmp_name'], "$uploads_dir/$dest");
} else {
echo "Possible file upload attack: ";
echo "filename '". $_FILES['userfile']['tmp_name'] . "'.";
print_r($_FILES);
}
?>
// это новые предупреждения
исполняющих requestPOST http://localhost/shoolPHP/uploadFile.php HTTP/1.1 Загружено HTTP/1.1 200 OK Fileupload.txtuploaded файл успешно /Home/upload.txt
Предупреждение: move_uploaded_file (/Home/upload.txt): не удалось открыть поток: Нет такого файла или каталога в C: \ XAMPP \ HTDOCS \ shoolPHP \ uploadFile.php на линии
Внимание: move_uploaded_file(): Не удается переместить «C: \ XAMPP \ TMP \ phpB374. tmp 'to' /Home/upload.txt 'в C: \ xampp \ htdoc s \ shoolPHP \ uploadFile.php на линии
Вы читали сообщения об ошибках и просматривали строки, на которые они ссылаются? Это базовая проверка синтаксиса. –
исправил пропущенное заклинание «Файлы», но все еще существует проблема –
Ну, вы пытаетесь получить доступ к папке '/ Home /' на вашей машине Windows. Не могли бы вы объяснить, какую папку вы думаете, что должно быть? Он существует? –