webForumDet fria alternativet

Inloggning

ASPur ASP

8 svar · 439 visningar · startad av Vinnaren

VinnarenMedlem sedan sep. 2005833 inlägg
#1

Hej

Jag undrar hur man gör ett inloggningsskript med flera olika användarnamn och lösenord.
så skriver man in admin och ett lösenord tex 123 så kommer man till admin sidan.
skriver man tex test som anv. namn och 456 som lösenord loggas man in på en annan sida än vad anmin kom in på.

Hade tänkt mig att ha 3 sådana.

Tacksam för alla svar. :birp

PeppeMedlem sedan sep. 200544 inlägg
#2

Http://pbf.mine.nu/?visa=scripts

Tanka pbf´s medlemsystem

PoffeMedlem sedan apr. 20022 743 inlägg
#3

Peppe skrev:

Http://pbf.mine.nu/?visa=scripts

Tanka pbf´s medlemsystem

Off topic: Varför har du längst ner en länk för att validera sidan när den inte går igenom? Ser för övrigt väldigt konstig ut i FF.

OveRRidEMedlem sedan feb. 200112 078 inlägg
#4

Inte för att vara sån, men det där var verkligen ett perfekt typexempel på hur man helst inte ska skriva ASP-kod. ;)

Scriptet fyller sin funktion, men kodmässigt följer det IDG's WebStudio-scriptmetodik, vilket som bekant inte är något bra föredöme.

1. Istället för "Driver={Microsoft Access Driver (*.mdb)}..." bör man använda "Driver=Microsoft.Jet.Oledb.4.0;Datasource...".
2. Att skriva "If recset.EOF = True Then", är ganska ugly. ;) "If recset.EOF Then" räcker.
3. Att upprepa funktionen "Fixbug()" i alla filer där den används, är precis raka motsatsen på hur funktioner/subfunktioner är tänkt att användas. Placera denna funktion i en include-fil istället, som sedan inkluderas där den behövs.
4. Metoden "Fixbug()" är feldöpt, då det som kallas "SQL Injections" inte är någon bugg, det är bara ett resultat av parameterlös användning av SQL-strängar och dålig kontroll på indata från klienten.
5. Style/CSS-elementen ska flyttas till en egen CSS-fil som sedan inkluderas på varje sida istället. Precis som med inkluderingen av metoder, detta är grundregel nummer ett med CSS.
6. Databasen är felplacerad/feldöpt. Eftersom databasen ligger i den "öppna" webbroten kan vem som helst som gissar Access-filens namn komma åt hela databasen. Om den inte ligger utanför webbroten måste den ha ett mindre "usual" namn.
7. Som vanligt med IDG-kod; dåligt namngivna variabelnamn och kass datatypsnotering.

PeppeMedlem sedan sep. 200544 inlägg
#5

Frågade jag om ni skulle kommentera ett script, som förövrigt var ett av de första Aspscripten jag gjorde =)
Så det är nog rätt illa kodat.

Ha d annars gött!

OveRRidEMedlem sedan feb. 200112 078 inlägg
#6

Peppe skrev:

Frågade jag om ni skulle kommentera ett script, som förövrigt var ett av de första Aspscripten jag gjorde =)
Så det är nog rätt illa kodat.

Nej, det gjorde du inte. Men eftersom du rekommenderar det till någon annan, så tänkte jag att den personen kanske inte ville göra alla samma misstag som du gjorde.

Förhoppningsvis vill de flesta i det här forumet samma sak; hjälpa och bli hjälpta. Och att hjälpa någon med kod som den där, ja.. det måste man anmärka på.

VinnarenMedlem sedan sep. 2005833 inlägg
#7

ok, det var ett bra skript. Men hade tänkt mig något annat enklare.

Jag har fyra sidor. Den ena är startsidan som man loggar in på. Sen ska den kolla vilken sida man ska komma till. tex loggar man in som admin kommer man till admin sidan. Loggar man in som Gäst kommer man till gäst sidan och loggar man in som Testare så kommer test sidan. Man ska fylla i både anv namn och lösenord. Det ska inte vara något som man registrerar sig på utan ska vara förinställt i koden. Sen på varje sida som man kommer till så ska det finnas något som kollar så man verkligen har rätt att se den.

Hoppas ni förstog något bättre. Är ny på asp ;)

liljaMedlem sedan juli 20041 183 inlägg
#8

Absolut enklaste vore att göra allt i ASP utan databas. Allt efterssom du lär dig kommer du förstå hur man utökar säkerheten och bygger ut systemet. Tycker dock att mitt exempel är rätt grundläggande och visar på hur man ska skriva korrekt skriven kod. Kanske inte perfekt men längt ifrån lika dåligt som IDGs exempel, eller? :)

Om du sedan vill kontrollera om användaren är inloggad så skriver du följande kod högst upp i webbläsaren:

<%
	'----- Kollar så att användaren är inloggad och har behörighet till nivå två
	If Not Session("loggedin") Or Not Session("type") = "two" Then
		'----- Nej, skickar användaren till loginsidan
		Response.Redirect("login.asp")
	End If
%>
VinnarenMedlem sedan sep. 2005833 inlägg
#9

åå, tack så mycket. :bire

137 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)