PDA

Просмотр полной версии : Закачка изображений


julia2004
01.07.2004, 17:10
Warning: Unable to create 'bedroom/010010101p.jpg': Permission denied in /opt/www/WWW/union/www/admin.php on line 165

Warning: Unable to move '/tmp/phpZXfWcB' to 'bedroom/010010101p.jpg' in /opt/www/WWW/union/www/admin.php on line 165

Вот такая вот штука.

На локалке работает все нормально.

Код:
if (!isset($_GET["flag"])) {
echo"<form enctype='multipart/form-data' action='admin.php?flag=1&id=".$_GET['id']."' method='POST'>
.....
Загрузить фото 1 (preview):<input name='userfile1' type='file'>
.....
<input type='submit' value='Загрузить'>
</form>";
}
else {
if (move_uploaded_file($_FILES['userfile1']['tmp_name'], $uploaddir.$_POST["kod"].'p.jpg') and
move_uploaded_file($_FILES['userfile2']['tmp_name'], $uploaddir .$_POST["kod"].'.jpg')) {
.................
}
}

julia2004
01.07.2004, 17:13
and
move_uploaded_file($_FILES['userfile2']['tmp_name'], $uploaddir .$_POST["kod"].'.jpg')
- На это внимания обращать не надо - выдернула лишний кусок кода.

Strange_mail
01.07.2004, 17:27
Права не розданы? папку создала? которая bedroom?

julia2004
01.07.2004, 17:41
Cоздала.
А как права раздать???

Strange_mail
01.07.2004, 17:44
Оригинал написал(а) julia2004
Cоздала.
А как права раздать???
Нужны права на разрешение записи веб-серверу в эту папку.

julia2004
05.07.2004, 12:56
Но теперь сами изображения не отображаются.
На локалке все нормально.

Strange_mail
05.07.2004, 14:19
Оригинал написал(а) julia2004
Но теперь сами изображения не отображаются.
На локалке все нормально.
На локалке - это в Винде?

Так надо бы и на чтение тоже права. :)

julia2004
05.07.2004, 14:58
На папку стоит 777.
Может быть на сам файл нужно установить права?
CHMOD()?????

kompadre
05.07.2004, 15:09
Скорее всего.
На файл поставь 644

julia2004
06.07.2004, 10:47
Может чего-то в коде??

if (move_uploaded_file($_FILES['userfile1']['tmp_name'], $uploaddir.$_POST["kod"].'p.jpg') and
move_uploaded_file($_FILES['userfile2']['tmp_name'], $uploaddir .$_POST["kod"].'.jpg')) {
chmod ($uploaddir.$_POST["kod"].'p.jpg', 0644);
chmod ($uploaddir.$_POST["kod"].'.jpg', 0644);
........
}

julia2004
06.07.2004, 13:55
что-то в этом роде:
CharsetRecodeMultipartForms
Знающие люди, подскажите!

Constantine
06.07.2004, 14:10
Если на директорию 777, то файлы-то чмодить ни к чему, должно нормально писаться...
В коде тож ни какого криминала не видно...
Сравни $uploaddir с корнем своего сервера, например в php_info()... Кажется, всё-таки с директориями лажа какая-то ;)
Да, особенно, если тестируешь у себя и аплоадишь не меняя на сервак ;)

julia2004
06.07.2004, 14:29
скрипт, который с uploadmove - admin.php
На этом же уровне находится папка bedroom
$uploaddir="bedroom/";
Или я чего-то не понимаю??
Тем более, что файлы записываются туда, куда нужно, но такое ощущение, что они испорчены.
Открываю просто:
http://union-mebel.ru/bedroom/010010101.jpg
а там :( .

Constantine
06.07.2004, 14:51
phpinfo()... Упс! :D
Ой нет, абсолютный путь в файловой системе ;)
Скажем, тогда $_SERVER['DOCUMENT_ROOT']."/bedroom/"
Странно, что же туда пишется... Уже сам не уверен, но с абсолютным путем как-то надежнее, уж точно ;)
Ну и как там спальни? ;)

Strange_mail
06.07.2004, 14:57
Оригинал написал(а) julia2004
скрипт, который с uploadmove - admin.php
Тем более, что файлы записываются туда, куда нужно, но такое ощущение, что они испорчены.
Открываю просто:
http://union-mebel.ru/bedroom/010010101.jpg
а там :( .
В папку со скриптом добавь файл .htaccess со строкой
CharsetDisable On

после этого должны нормально приходить, не биться.

julia2004
06.07.2004, 15:33
<IfModule mod_charset.c>
CharsetRecodeMultipartForms off
</IfModule>
Думала, что поможет - не помогло.
Предлагаете заменить на
CharsetDisable On
??
Или оставить и то и другое?

Strange_mail
06.07.2004, 16:00
Попробуй просто вставить в конец файла.

Constantine
06.07.2004, 16:25
И ещё разок на счет относительных путей...
Also note that the 'string destination' should be the full path and filename. As long as your server isnt using virtual hosting, you should be able to use $_SERVER['DOCUMENT_ROOT'] . "path/within/website". В общем, я предупреждал...