Необходимо переместить загруженные файлы, при выполнении нижележащего кода возникает ошибка, т.к. происходит попытка перемещения по адресу http://opros.ru/imagesZ:\tmp\phpA04.tmp. При указании адреса типа C:\\webservers\images\home\opros.ru\www\images возникает подобная ошибка. Как переместить файлы в нужную директорию? if(isset($_POST['create'])) { $directory="http://opros.ru/images"; $id=uniqid(mt_rand(0,100000000)); if((is_uploaded_file($_FILES['image1']['tmp_name']))&&(is_uploaded_file($_FILES['image2']['tmp_name']))) { if(!((move_uploaded_file($_FILES['image1']['tmp_name'],$directory.$_FILES['image1']['tmp_name']))&&(move_uploaded_file($_FILES['image2']['tmp_name'],$directory.$_FILES['image1']['tmp_name'])))) exit("Ошибка при загрузке файлов"); } }
а какая ошибка ? скорее всего прав доступа на запись в директорию указанную во втором аргументе move_uploaded_files нет.
Warning: move_uploaded_file(Z:\home\opros.ru\wwwZ:\tmp\php94C0.tmp) [function.move-uploaded-file]: failed to open stream: Invalid argument in Z:\home\opros.ru\www\new.php on line 12
путь и является существующим. как я понимаю, тут ошибка в том, что этот путь не так задано, а как именно он должен задаваться, я не могу понять
уже смотрел. дело в том, что там задается относительный путь, а мне надо абсолютный, т.к. временное хранилище и постоянное находятся на разных дисках
yesman Не пробовали смотреть в собственный код? 1) Вы ставите префиксом (переменная $directory) URL, а не локальный путь, а заливать с помощью HTTP и move_uploaded_file - нельзя 2) Ключ tmp_name - содержит полный абсолютный путь до временного файла, если вам нужно получить имя передаваемого файла - это ключ name 3) Заливать файлы и полагаться на передаваемое имя - нельзя (с точки зрения безопасности). В вашем (скорее всего не вашем) коде есть переменная $id содержащее "случайное" имя, видимо нужно использовать его 4) Имя на самом деле не случайное и опять-таки с точки зрения безопасности - лучше не использовать mt_rand и uniqid
Да, ошибка была связана с tmp_name. Разобрался чуть раньше чем вы это написали, но все равно спасибо. Остальное тоже учту