Avatar billede rotco Juniormester
22. april 2009 - 00:08 Der er 4 kommentarer og
1 løsning

htaccess & unlink problem..

Hej,

Jeg har lavet en hjemmeside og jeg bruger htaccess mod_rewrite på denne hjemmeside for at gøre mine adresser pænere end alle de forskellige tegn.. Nu er jeg stødt på et problem.

Jeg vil gerne bruge php unlink til at slette billeder og film fra min server, men det kan umiddelbart ikke lade sig gøre da den tager mod_rewrited som underside..

f.eks:

http://minhjemmeside.com/bruger.php?user=rotco

bliver lavet om til

http://minhjemmeside.com/bruger/rotco

så "bruger" er jo pludselig en underside eller hvad det hedder.. Så derfor kan jeg ikke bruge unlink på almindelig vis... jeg prøvede først med:

unlink('pictures/billede.jpg');

pictures/billede.jpg er naturligvis opfundet da det reelt set er $row[picture] der skulle stå, men i forstår..

Filen bliver ikke slettet.. Da den i dette tilfælde ville slette følgende billede:

http://minhjemmeside.com/bruger/pictures/billede.jpg

så jeg tænkte at følgende kode ville kunne gøre det:

unlink('../pictures/billede.jpg');

nu sletter den så http://minhjemmeside.com/pictures/billede.jpg ifølge den selv, men den GØR DET BARE IKKE - selvom den fortæller mig at den gør... Nogen der ved hvad der kan gøres?
Avatar billede jakobdo Ekspert
22. april 2009 - 09:00 #1
Når du kalder unlink(), så arbejder PHP direkte i filsystemet.
mod_rewrite omskriver de request en bruger laver via din hjemmeside, så de 2 ting skal eller bør du ikke blande sammen her, for det er ikke problemet.

Hvis du har en fil:

slet.php i roden.
og et billede i:
pictures/billede.jpg
så bør du til en hver tid kunne kalde:

unlink('pictures/billede.jpg');

Og hvis du så ikke får lov til at slette, så kan det være rettigheder eller fordi du skal angive den fulde sti, ala:

/var/www/domain.tld/htdocs/pictures/billede.jpg
Avatar billede rotco Juniormester
23. april 2009 - 11:38 #2
Problemet har løst sig selv.. Hvordan det ved jeg ikke, men jeg værdsætter din kommentar, så kom med et svar.. Helst inden 24 timer fra nu ellers acceptere jeg selv *GG*
Avatar billede jakobdo Ekspert
23. april 2009 - 11:41 #3
Svar!

Du kan da ikke sætte en tid på 24 timer.
Hvad hvis jeg ikke var nørd og sad foran min computer 24 timer i døgnet.
Det kunne jo være jeg havde haft et liv. :o)
Avatar billede rotco Juniormester
23. april 2009 - 13:57 #4
Kunne være at jeg vidste at du var det *GG*

Joke... Ja undskyld, jeg har til vane med at give for hurtige deadlines... Hader bare ubesvarede spørgsmål :D Ved ikke hvorfor :D
Avatar billede jakobdo Ekspert
23. april 2009 - 14:47 #5
Takker for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester