Простите, если части этого вопроса не имеют смысла - я новичок в программировании в целом. Не стесняйтесь поправлять меня!
Вот моя проблема: я делаю страницу загрузки PHP, которая использует $ _POST. В разделе HTML есть два поля для загрузки, оба из которых являются необязательными. Так вот мой код, скажем, пример-upload.php:
<form action="" enctype="multipart/form-data" method="post">
<input type="file" id="upload1" name="upload1" accept=".jpg">
<input type="file" id="upload2" name="upload2" accept=".jpg">
<button type="submit" name="submit">Submit either, both, or none of these</button>
</form>
<?php
if (isset($_POST['submit'])) {
if (!empty($_POST['upload1'])) {
$filename_upload1 = $_FILES['upload1']['name'];
}
if (!empty($_POST['upload2'])) {
$filename_upload2 = $_FILES['upload2']['name'];
}
// Checks if there is no upload at all
if (!isset($filename_upload1) && !isset($filename_upload2)) {
echo 'You didn\'t upload anything and that\'s OK';
} else {
if (isset($filename_upload1)) {
move_uploaded_file($_FILES['upload1']['tmp_name'], 'path/to/file/' . $filename_upload1);
}
if (isset($filename_upload2)) {
move_uploaded_file($_FILES['upload2']['tmp_name'], 'path/to/file/' . $filename_upload2);
}
echo 'One or two files was successfully uploaded';
}
}
?>
Каждый раз, когда я запускаю это, подчиняясь либо один или оба файла, я получаю сообщение «Вы не закачивать ничего, и что все в порядке» , заставив меня поверить, что я делаю что-то неправильно с переменной $ _FILES. Необычно, что у меня другая форма на подобной странице, за исключением одного поля для загрузки вместо двух. Кажется, это работает.
Любые советы? Спасибо!
мы 'здесь обрабатываются файлы не $ _POST, поэтому 'if (! empty ($ _ POST [' uploadX '])) 'будет терпеть неудачу. –
в следующий раз >>> http://php.net/manual/en/function.error-reporting.php –
и убедитесь, что папка, которую вы хотите загрузить, имеет права доступа к ней. –