Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  Failide/foldrite kustutamine php märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 28.01.2009 00:00:36 Failide/foldrite kustutamine php vasta tsitaadiga

Tere. Olen siis üle pika aja kimpus php ga. Teen ühte albumi scripti. Osad pildid laetakse ülesse läbi browseri. Nende kustutamisega probleeme pole. On aga võimalus laadida pildid kogu kaustaga läbi ftp ja vat neid pilte ei lase kustutada. $kat on siis kaust, kus pildid asuvad. kustutamise koodifail on kaustast väljas. Käivitades tuleb teade


tsitaat:
_loodus (4).jpg
Warning: unlink(./polt/_loodus (4).jpg) [function.unlink]: Permission denied in D:\WWW\www\DumCoff 0.1\Album\kustutakaust.php on line 27

Warning: rmdir(polt) [function.rmdir]: Permission denied in D:\WWW\www\DumCoff 0.1\Album\kustutakaust.php on line 30


aga chmod tehakse kenasti ära, ei tule mingit veateadet selle kohta.


chmod("./".$kat, 777);
//**************************** failide otsing
function OtsiF($kaust) {
global $fold, $fi, $i, $file;
$fold=""; $file="";
$dir=opendir("./".$kaust);
$i=1;$ii=0;$fi=0;
while($asi=readdir($dir))
{
if($asi!="." && $asi!=".."){
if (is_dir($asi)) {
        // Teed seda, mis sa kataloogiga teha tahad
      $fold[$fi]=$asi;
      //************ Leidsid faili*****************************
      $fi++;} else {$file[$i]=$asi;$i++;}
      
      }}
closedir($dir);
}
OtsiF($kat);
for ($o=1;$o<$i;$o++){
echo $file[$o];
chmod("./".$kat."/".$file[$o], 777);
unlink("./".$kat."/".$file[$o]);
}
//***********************
rmdir($kat);





Edit:

Läbi ftp kustutamine ei tuleks hästi välja, sest ma loen kaustast pildi adred andmebaasi ja siis jääksid seal tabelid maha võtmata.

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 28.01.2009 00:04:59 vasta tsitaadiga

Kaustale, kus see fail asub, pead ka muutmisõigused andma.
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 28.01.2009 00:10:47 vasta tsitaadiga

Peaks nagu olema ju esimene rida kohe.

chmod("./".$kat, 777);


ei tohiks vale tee olla, siis peaks ju veateade tulema. Koodi fail on väljaspool $kat kausta.

Edit: Ega mingit jama seepärast pole, et hetkel katsetan localhostis. Pole veel asju veebi viinud. Ehk see localhostis ei toimi.

_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 28.01.2009 00:13:10 vasta tsitaadiga

Arusaadavalt jookseb script Winnis, kas kasutajale, kelle alt PHP jookseb on antud üldse kustutamisõigus (Winnis on selles suhtes rohkem haldamist õigustega ja CHMOD ei toimi üldse.)
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
Valdars
HV veteran
Valdars

liitunud: 22.02.2003




sõnum 28.01.2009 00:17:09 vasta tsitaadiga

Sa annad chmodile õigused valesti ette.
Kommentaarid: 47 loe/lisa Kasutajad arvavad:  :: 0 :: 1 :: 44
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 28.01.2009 00:20:48 vasta tsitaadiga

Proovi 0777 ette anda, ehk siis toimib paremini.
tsitaat:
Note that mode is not automatically assumed to be an octal value, so strings (such as "g+w") will not work properly. To ensure the expected operation, you need to prefix mode with a zero (0):

php:
  1. <?php
  2. chmod("/somedir/somefile", 755);   // decimal; probably incorrect
  3. chmod("/somedir/somefile", "u+rwx,go+rx"); // string; incorrect
  4. chmod("/somedir/somefile", 0755)// octal; correct value of mode
  5. ?>
Kommentaarid: 85 loe/lisa Kasutajad arvavad:  :: 0 :: 2 :: 78
tagasi üles
vaata kasutaja infot saada privaatsõnum
andrusny
Kreisi kasutaja
andrusny

liitunud: 20.03.2006




sõnum 28.01.2009 00:39:29 vasta tsitaadiga

Tänud, tundub, et 0777 toimib. Kustutas kaustast pildid ja kausta enese ära.
_________________
Kommentaarid: 7 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 7
tagasi üles
vaata kasutaja infot saada privaatsõnum mine selle kasutaja kodulehele
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  Failide/foldrite kustutamine php
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.