Я пытаюсь создать своего рода загрузчик «selfie» на мобильных телефонах. Теперь он отлично работает, это просто, когда я тестирую файл загрузки на своем iPhone, все фотографии будут называться image.jpeg, чтобы они переписывали друг друга. Теперь, что я хочу сделать, переименуйте файл, чтобы, скажем, image1.jpeg и следующий image2.jpeg, прежде чем он будет загружен на сервер.Переименование файла перед загрузкой на сервер
Мой текущий код:
<?php
if (isset($_FILES['myFile'])) {
move_uploaded_file($_FILES['myFile']['tmp_name'], "uploads/" . $_FILES['myFile'] ['name']);
echo 'successful';
}
?>
Я попробовал этот код, чтобы дать своему изображению значение имени файла изображения плюс случайное число в диапазоне от 1 до 99999, но это не было Сукчес.
<?php
if (isset($_FILES['myFile'])) {
$temp = explode(".",$_FILES["myFile"]["name"]);
$newfilename = rand(1,99999) . '.' .end($temp);
move_uploaded_file($_FILES["myFile"]["tmp_name"], "uploads/" . $newfilename;
echo 'successful';
}
?>
Любые указатели будут оценены.
И какие ошибки вы получаете? 'move_uploaded_file ($ _ FILES [" myFile "] [" tmp_name "]," uploads/". $ newfilename;' неверно, используйте 'move_uploaded_file ($ _ FILES [" myFile "] [" tmp_name "]," uploads/". $ newfilename); '(вам не хватало закрывающей скобки) ... наконец, вы должны придумать что-то более рандомизированное, так как вы можете легко столкнуться с вашим существующим кодом. Попробуйте использовать' sha1 (uniqid (mt_rand(), true)) 'вместо' rand (1,99999) ' – sjagr
Wow .. Извините, что это было, спасибо haha! – user2099810
Вместо использования' rand() 'вы можете добавить текущую временную метку с помощью функции' time() '. Вы избегаете столкновения. – marian0