Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 16:24 Der er 18 kommentarer og
1 løsning

oprette mappe, slette fil

når eg vil oprette en mappe får jeg hele tiden en fejl der fortæller mig at den findes i forvejen (selv om den ikke gør)

Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set mappe = fso.CreateFolder(server.mappath("test/"&bruger))

der udover kan jeg heller ikke få den til at slette en fil i en mappe:

if fso.FolderExists(Server.Mappath("/test/"& billednavn)) then
    fso.DeleteFile(Server.Mappath("/test/"& billednavn))

hvad er der galt?
Avatar billede thesurfer Nybegynder
29. oktober 2003 - 16:35 #1
hvis du ikke er helt sikker på din kode, se:
http://www.w3schools.com/asp/asp_ref_filesystem.asp
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 16:52 #2
thesurfer>> ja kender godt dit link.....men det hjælper mig ik så meget

jeg kan godt oprette en mappe, men problemet er når jeg har en variabel med, så vil den ikke
Avatar billede thesurfer Nybegynder
29. oktober 2003 - 16:57 #3
prøv at lave det hele som variabel.. feks.:
dim myfolder
myfolder = "/test/" & billedenavn
og: fso....(myfolder)
Avatar billede hiks Nybegynder
29. oktober 2003 - 16:58 #4
kig på din if sætning:

if fso.FolderExists(Server.Mappath("/test/"& billednavn)) then

du tester for om FOLDEREXISTS ikke FILEEXISTS som du skal... og så er du igang igen!

/hiks
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 16:59 #5
hmm men jeg bliver vel nødt til at bruge server.mappath gør jeg ikk?
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 17:01 #6
hiks>> jeg har lige rettet den, men det hjalp ikke, når jeg vil slette kører den bare igennem uden fejl, men den sletter ikke
Avatar billede hiks Nybegynder
29. oktober 2003 - 17:02 #7
set mappe = fso.CreateFolder(server.mappath("/test/" & bruger ))

vil jeg også tro du skal have ændret!

/hiks
Avatar billede thesurfer Nybegynder
29. oktober 2003 - 17:02 #8
Hvis du vil slette mappen, skal du bruge DeleteFolder i stedet for DeleteFile.
Avatar billede hiks Nybegynder
29. oktober 2003 - 17:05 #9
har du tjekket om det der er i dine variable nu også er der som du regner med altså lige prøve at lave en response.write på dem alle, så kan du jo se hvorvidt det passer med dine mapper og filer...

response.write server.mappath("test/"&bruger)
response.write Server.Mappath("/test/"& billednavn

og evt. finde ud af om den hoppe ind og vil slette billedet ved at lave et udfald på else ved

if fso.FileExists(Server.Mappath("/test/"& billednavn)) then
    fso.DeleteFile(Server.Mappath("/test/"& billednavn))
else
    response.write "Filen findes ikke!"
End if

/hiks
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 17:06 #10
hmm kan godt se det kan virke lidt forvirrende, men ovenstående kode er faktisk udsnit fra to forskellige

den ene er til at oprette en mappe med (giver fejlen, at mappen findes i forvejen)

og den anden er til at slette en fil med (giver ingen fejl)
Avatar billede hiks Nybegynder
29. oktober 2003 - 17:08 #11
den med mappen burde være lige til, hvis altså mappath er hvad du forventer den skal være...

Meningen med at sætte ovenstående stump kode ind er også at finde ud af om det er som du forventer - tag desuden at lave det udfald på din sletning af filen og se den overhovedet kan finde filen!

/hiks
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 17:13 #12
hmm jeg tror det har noget og gøre med server.mappath, men den er vel nødvendig hvis man ikke kender den fulde sti til mappen på serveren ik?
Avatar billede hiks Nybegynder
29. oktober 2003 - 17:16 #13
jow men prøv nu og tjekke hvad du får ud af din server.mappath - ellers vil du jo aldrig finde ud af hvor du forsøger at oprette mapper!

alternativet er at du bare laver den direkte som:

Set mappe = fso.CreateFolder("test/" & bruger)
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 17:17 #14
nu har jeg fået min delete til at virke, det var et problem med en variabel der blev overført, men kan stadig ikke få den til at oprette en mappe
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 17:18 #15
hiks ja 2 sec...
men jeg kan ikke lave:
Set mappe = fso.CreateFolder("test/" & bruger)
det har jeg ikke rettigheder til  på serveren
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 17:23 #16
response.write server.mappath("test/"&bruger) giver:

d:\web\dramsgaard.dk\wwwroot\test
Avatar billede a-torsten Nybegynder
29. oktober 2003 - 17:29 #17
Der er jo niget der tyder på at der ingen værdi ligger i variablen "bruger"...

/Anders
Avatar billede hiks Nybegynder
29. oktober 2003 - 17:30 #18
prøv lige:

fso.CreateFolder(Server.Mappath("test") & "\" & bruger)

/hiks
Avatar billede dramsgaard Nybegynder
29. oktober 2003 - 17:36 #19
hiks >> ja nu virker det!!!

mange tak for hjælpen : )
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
Kurser inden for grundlæggende programmering

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