Chmod пробем

Soul_Stealler

Registered
Дава ми някаква грешка, която не мога да разбера на какво се дължи ... Ето я:

Warning: chmod() [function.chmod]: Operation not permitted in /home/bggames/public_html/***********.php on line 38

Ето 36 - 39 ред:

Код:
elseif ( $id == "chmod"){
$hpath=str_replace("%20",' ',$hpath); 
chmod("$path$hpath", "$b");
echo "<META HTTP-EQUIV=\"Refresh\" CONTENT=\"0; URL=***\">";
}


Някакви идеи защо дава така ?
 

Admin

Registered
Код:
chmod("$path$hpath", "$b");

Първо:
Сигурен ли си, че скрипта има право да сменя атрибутите на този файл?
Би имал право да ги сменя ако самия скрипт преди това е създал файла.
Друг начин не виждам.

Друго което ме интересува:

$path$hpath - това е пътя до файла. Верен ли е?.
$b - това каква стойност има?
 

Soul_Stealler

Registered
Би имал право да ги сменя ако самия скрипт преди това е създал файла.

Опа ... а няма ли друг начин ... :roll: . Защото скрипта само ги индексира, не ги е създал той :roll:
 

Admin

Registered
Soul_Stealler каза:
Би имал право да ги сменя ако самия скрипт преди това е създал файла.

Опа ... а няма ли друг начин ... :roll: . Защото скрипта само ги индексира, не ги е създал той :roll:

Как е качен този файл дето искаш да му сменяш атрибутите?
 

Soul_Stealler

Registered
Ами, просто в друга папка на сървъра ... Няколко нива по надолу от скрипта който индексира. Т.е. Скрипта: http://soul-design.org/sdforums/**/**/***.php

Мястото където са качени снимките на които искам да сменя chmod:
http://soul-design.org/sdforums/****/
 

Admin

Registered
КАк е качен файла?
Кой го качва ? Скрипт ли? Тили? Потребител ли?
И как го качва - ftp, чрез скрипт ли и т.н.
Кажи де?
:)
 

Soul_Stealler

Registered
Добре. Ето още пояснение. :)

›››› Засега файловете с картинките аз ги качвам през ftp докато направя системата за кавване на аватари във форума.

След като това е готово потребителите ще си ги качват чрез скрипт, но засега е горното.
КАк е качен файла?
Как така как е качен файла ? :)
 

Admin

Registered
Значи.
Ако става въпрос за форум аватарите ти то тогава е лесно.
Сега ги качваш през ФТП и може ръчно да им сменяш атрибутите.
По късно когато вече направиш скрипта чрез който ще ги качват
ще трябва самия скрипт да им сменя атрибутите веднага след качването.

Примерно:
Качва аватара в дадена папка и му сменя атрибута.

Ако предположа, че ти искаш да направиш така, че потребителя да може
да качи аватар и след това да го изтрие и смени с друг...
В този случай не е толкова наложително да сменяш атрибутите.

Може да направиш един скрипт за качване и изтриване.
Да прави и двете в зависимост какви данни му пращаш.

По просто обяснено.

Правиш един файл uploadedit.php .
Този файл ще се занимава само с аватарите (примерно).
Чрез него ще качват и чрез него ще променят или трият аватара.
В зависимост от това какви данни ще получи скрипта ще извършва различни действия ( ще изпълнява различни секции от кода).

В закона пише, че файла който създава (уплоадва) файл има права над
него .
Щом го е създал значи може да го прави каквото си поиска независимо от атрибутите му.

Другия проблем, който може да се зададе е следния.
Потребител А качва аватар с име snimka.gif и след 10 мин. потребител Б
качва аватар със същото име.

Трябвааватара да е с уникално име, което да се генерира.
След това името да се записва в база данни за да не се ползва.

Казвам ти как са го направили в phpBB форумите.
 

Горе