webForumDet fria alternativet

Skapa mapp och fil för varje användare

ASP

2 svar · 346 visningar · startad av Oputres

Medlem sedan feb. 2004333 inlägg
Frågan#1

Allå!

Jag skulle vilja att en mapp med användarens namn skapades automatiskt när användaren godkänner sitt konto. Ponera att användarnamnet är Donald. I den skapta Donald-mappen vill jag också att det skapas en default.asp-fil som ser ut som följer:

<%
Option Explicit
Response.Buffer = True
%>

<!-- #include file="../inst/dbanslutning_medlem2.asp" -->

<%
Dim User, RS, strKontonamn, strAnvId, blnAktiverat
'############## ANGE KONTONAMN NEDAN ##############
strKontonamn = "[B]Donald[/B]"
'##################################################

Set RS = Connect.Execute("Select AnvId, OrgNamn, Aktiverat From AnvDb Where Kontonamn = '" & strKontonamn & "';")

If Not RS.EOF Then
  blnAktiverat = CBool(RS("Aktiverat"))
End If

If RS.EOF Then
  Response.Redirect("error_fyranollfyra.asp")
ElseIf blnAktiverat = False Then
  Response.Redirect("error_inactive.asp")
Else
  strAnvId = RS("AnvId")
End If
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
  <title><% =RS("OrgNamn") %></title>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<frameset rows="*,1" cols="*" framespacing="0" frameborder="NO" border="0">
  <frame src="../ks/default.asp?AnvId=<% =strAnvId %>">
  <frame src="../bottom.htm" scrolling="NO" noresize>
</frameset>
<noframes><body>

</body></noframes>
</html>

I default.asp-filen skall alltså endast följande rad vara unik för varje användare:
strKontonamn = "Donald"

Men hur skapar jag vid aktiveringen av ett konto en användarmapp för att sedan lägga dit en default.asp-fil för att i den lägga en färdig mall med text där en rad är unik? Går det överhuvudtaget? Användarnamnet finns lagrat i variabeln AnvNamn när användaren aktivierar sitt konto.

Medlem sedan nov. 20017 144 inlägg
#2

Visst det är inte så svårt, sök lite på FSO. Eller testa något sådant här:

dim fs,f,strKontonamn, tfile, uniqueFolder
strKontonamn = "Donald"
uniqueFolder = server.mappath("private_folders/") & server.urlEncode(strKontonamn)
'Skapa FSO-objektet
    set fs=Server.CreateObject("Scripting.FileSystemObject")
'Skapa en mapp med ett dynamiskt namn
    set f=fs.CreateFolder(uniqueFolder)
    set f=nothing
'Skapa en asp-fil, lägg den i den nyss skapade mappen
    set tfile=fs.CreateTextFile(uniqueFolder &"/default.asp")
'Skriv till filen
    tfile.WriteLine("Hej "& strKontonamn &", detta är din unika fil.<br>")
    tfile.WriteLine("Klockan var "& time & " när denna rad skrevs, men nu är klockan <"& Chr(37) &"=time()"& Chr(37) &">")
'Stäng filen
    tfile.close
    set tfile=nothing
    set fs=nothing
'Gå till filen
    response.redirect "private_folders/"& server.urlEncode(strKontonamn) &"/default.asp"
Medlem sedan feb. 2004333 inlägg
#3

Underbart, skall genast testa den!

258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)