У меня есть две формы на одной странице, которые должны дать пользователям возможность вешать загрузки файла на сервер (с URL или с компьютера пользователя)Загрузка файла на сервер
<form method="post" action="bigorder.php" name="photourl">
<label for="photoorig">URL</label>
<input type="url" name="photoorig" placeholder="">
<input type="submit" value="Load" name="photoload">
<br>
</form>
<form method="post" action="bigorder.php" name="photofile" enctype="multipart/form-data">
<label for="photoloc">Load own file</label>
<input type="file" name="photoloc" id="photoloc">
<input type="submit" value="Load" name="photoload2">
</form>
и РНР
<?php
$tmpname=rand().".jpg";
if ($_POST['photoorig']) {
$file=file_get_contents($_POST['photoorig']);
$fp = fopen("/var/www/html/uploads/tmp/".$tmpname, "w");
fwrite($fp, $file);
fclose($fp);
}
if ($_POST['photoloc']) {
$tmpFile = $_FILES['photoloc']['tmp_name'];
$newFile = "/var/www/html/uploads/tmp/".$_FILES['photoloc']['name'];
$result = move_upload_file($tmpFile, $newFile);
echo $_FILES['photoloc']['name'];
if ($result) {
echo ' was uploaded<br />';
} else {
echo ' failed to upload<br />';
}
?>
Первая форма загружает файлы в порядке, но второй не работает вообще. Я даже не получаю сообщение об ошибке.
Что я делаю неправильно? Или что-то не хватает?
Функция использования является 'move_uploaded_file()', а не 'move_upload_file()' – D4V1D
Кроме того, если ничего не воспроизводится, может быть, это потому, что состояние 'если ($ _ POST [ 'photoloc'])' никогда встретил? – D4V1D
@ D4V1D, спасибо! Изменение вправо 'move_uploaded_file()' помогло решить проблему! – Anatoly