2016-03-30 2 views
-1

Я не могу загрузить файл на сервер xamppmove_uploaded_file не работает в локальном хосте

код в PHP:

$nome = $_FILES['userfile']['name']; 
$tipo = $_FILES['userfile']['type']; 
$dimensione = $_FILES['userfile']['size']; 
$tmp = $_FILES['userfile']['tmp_name']; 
$url_destinazione = "http://localhost/PHP/Giornale/" . $nome; 
$r = move_uploaded_file($tmp, $url_destinazione); 

Результат HTML страницы

Предупреждение: move_uploaded_file (http://localhost/PHP/Giornale/nnnnn.png): неудачная для открытия потока: HTTP-обертка не поддерживает записываемые соединения в C: \ xampp \ htdocs \ PHP \ Giornale \ inserisci_articolo.php в строке 117

+3

не использовать URL-адрес. RTM http://php.net/manual/en/function.move-uploaded-file.php использует путь. –

+1

^Ваша переменная '$ url_destinazione' должна быть локальным путем на вашем сервере, а не URL-адресом. Если бы вы могли просто использовать такие URL-адреса, я мог бы использовать 'move_uploaded_file ($ tmp, 'https://www.facebook.com/index.php')'. Подумайте, какие опасные ситуации могут возникнуть. – h2ooooooo

+0

@ h2ooooooo Да, возможно, еще больше фотографий кота. –

ответ

0

move_uploaded_file() не принимает URL-адрес на веб-сайте. Он принимает путь к местоположению в файловой системе.

Таким образом, вы должны были бы использовать что-то вроде этого:

$nome = $_FILES['userfile']['name']; 
$tipo = $_FILES['userfile']['type']; 
$dimensione = $_FILES['userfile']['size']; 
$tmp = $_FILES['userfile']['tmp_name']; 

$destinazion e= "/location/of/the/folder/PHP/Giornale/".$nome; 
$r = move_uploaded_file($tmp, $destinazione); 

PHP Documentation имеет хороший раздел загрузки файлов.

Смежные вопросы