17. december 2003 - 18:47Der er
46 kommentarer og 1 løsning
sende uønskede medlemmer videre
Hvordan kan jeg lave en liste af navne der sendes videre til en anden URL <% if session("UserName") = "xxxxxxxx" then response.redirect "http://www.yyyyyyyyy.dk/" end if
Brug en array.. dim navne, arrNavne, Videre Videre = "nej"
navne = "jens;ole;freak;osv" arrNavne = split(navne, ";") for i = LBound(arrNavne) to UBound(arrNavne) if session("UserName") = arrNavne(i) then Videre = "ja" end if
Hvis du på et tidspunkt finder ud af, at du har adgang til FileSystemObject, kan du gemme navnene i en txt fil, og derefter læse den og danne strengen "navne"..
Ja, der er mange muligheder, men jeg ville hoppe ud af løkken i din løsning.
navne = "jens;ole;freak;osv" arrNavne = split(navne, ";") for i = LBound(arrNavne) to UBound(arrNavne) if session("UserName") = arrNavne(i) then response.redirect "http://www.yyyyyyyyy.dk/" next
navne.asp: --- <% 'hans 'ole 'freak %> En besked til brugeren der prøver på at få adgang til navnene: hahaha... du kan ikke se navnene ! :) ---
Scriptet der læser navne.asp: --- <% Option Explicit ' SKAL være den første linie i dit asp dokument! ' definer alle dine variabler! Dim navne
Dim fso, f, filespec Set fso = CreateObject("Scripting.FileSystemObject") filespec = Server.Mappath("navne.asp") Set f = fso.OpenTextFile(filespec,1)
' Læs linie for linie indtil slutningen af filen Do While not f.AtEndOfStream ' hvis linien starter med ', er det "gyldigt" og tilføjes navne if left(f.ReadLine, 1) = "'" then navne = navne & f.ReadLine & ";" Loop
f.Close set f = nothing
' her checker du om det er korrekt (skal slettes efter test): repsonse.write "variablen 'navne' indeholder: " & navne
Et forslag. Kald din tekstfil for *.asp, så ingen kan få adgang til den og lav følgende struktur.
Leo Sussi Kjeld Hilda
Set FSO = CreateObject("Scripting.FileSystemObject") Set File = FSO.OpenTextFile("d:\sti\til\fil.asp", 1) If InStr(File.ReadAll, vbCrlf & session("UserName") & vbCrlf) > 0 Then 'Redirect Set File = Nothing Set FSO = Nothing
Det her er ikke testet, da min server brokker sig :)
<% Option Explicit
If (Request.ServerVariables("REQUEST_METHOD") = "POST") ' læs fra fil:
Dim navne, Linie Dim fso, f, filespec Set fso = CreateObject("Scripting.FileSystemObject") filespec = Server.Mappath("navne.asp") Set f = fso.OpenTextFile(filespec,1)
' Læs linie for linie indtil slutningen af filen Do While not f.AtEndOfStream Linie = f.ReadLine ' hvis linien starter med ', er det "gyldigt" og tilføjes navne if left(Linie, 1) = "'" then navne = navne & Linie & ";" Loop
f.Close set f = nothing
'skriv til fil:
dim arrNavne arrNavne = split(navne, ";") set f = fso.CreateTextFile(filespec, true)
f.WriteLine("<%")
for i = LBound(arrNavne) to Ubound(arrNavne) f.WriteLine(arrNavne(i)) next
If (Request.ServerVariables("REQUEST_METHOD") = "POST") then ' læs fra fil:
Dim navne, Linie Dim fso, f, filespec Set fso = CreateObject("Scripting.FileSystemObject") filespec = Server.Mappath("navne.asp") Set f = fso.OpenTextFile(filespec,1)
' Læs linie for linie indtil slutningen af filen Do While not f.AtEndOfStream Linie = f.ReadLine ' hvis linien starter med ', er det "gyldigt" og tilføjes navne if left(Linie, 1) = "'" then navne = navne & Linie & ";" Loop
f.Close set f = nothing
'skriv til fil:
dim arrNavne, i navne = replace(navne, "'", "") arrNavne = split(navne, ";") set f = fso.CreateTextFile(filespec, true)
f.WriteLine("<%")
for i = LBound(arrNavne) to Ubound(arrNavne) - 1 f.WriteLine("'" & arrNavne(i)) next
Senere kan jeg muligvis lave det sådan, at den læser navnene, og laver en radiobutton/checkbox til hvert navn. Derefter kan du nemt administrerer hvem der skal stå i filen.
Det virker ikke for mig. Den sender til siden index.asp og der kommer ikke noget i navne.asp selvom jeg ændrer det til <form name="adduser" action="navne.asp" method="post">
<% navne = "1;2;3;4;5;6;" arrNavne = split(navne, ";") for i = LBound(arrNavne) to UBound(arrNavne) if session("devUserName") = arrNavne(i) then response.redirect "http://yyyyyyyyyyyyyy.hj/" next
Både jeg og thesurfer gav dig to korrekte svar på dit spørgsmål til at starte med. At du fylder flere og flere tillægsspørgsmål på hele tiden, ændrer jo ikke på, at dit spørgsmål ret beset forlængst er besvaret. Det er ikke et brud på reglerne, da du har uddelt dine points. Jeg finder det blot knap så sympatisk.
Ingen tvivl om det - mit svar var rimelig kortfattet, men jeg mente sådan set, at det var et ret præcist svar på dit spørgsmål. Men lad nu det ligge...
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.