Hej!
Det var ett tag sen jag höll på med ASP så ni får väl ha överseende med detta.
Jag har en funktion som innehåller en vektor.
Vektorn innehåller 13 st olika personligheter.
Nu vill jag slumpa ut en utav dessa och lägga till den slumpade till en speciell kolumn i en tabell.
Här är koden, rätta mina fel :r :
Set conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=sthlmonline;USER=root;PASSWORD=;"
Function personlighet(POSITIV)
Dim arrPersonlighet(12) 'deklarera variabeln
'stoppa in posotiva personligheter i den
arrPersonlighet(0) = "charmtroll"
arrPersonlighet(1) = "hyper trevlig"
arrPersonlighet(2) = "mycket trevlig"
arrPersonlighet(3) = "trevlig"
arrPersonlighet(4) = "omtänksam"
arrPersonlighet(5) = "socialt monster"
arrPersonlighet(6) = "lojal"
arrPersonlighet(7) = "kärleksfull"
arrPersonlighet(8) = "förstående"
arrPersonlighet(9) = "företagssam"
arrPersonlighet(10) = "positiv"
arrPersonlighet(11) = "aktiv"
arrPersonlighet(12) = "skämtare"
'slumpa ut en utav dessa personligheter
Randomize
slump_positiv = Int(RND*arrPersonlighet(12)) - 1
Do While slump_positiv >= 0
slump_positiv = slump_positiv - 1
Loop
SQL = "INSERT (slump_positiv) INTO tbl_invanare VALUES('" & personlighet & "')"
rs = conn.Execute(SQL)
End Function
set conn = nothing
set rs = nothing
Jag antar att det här ser helt crazy ut...säg hur jag ska göra isåfall :)
Det mesta ser galet ut.
Du har en funktion som man ska skicka in något i som inte används.
Du försöker multiplicera RND med strängen "skämtare"
Sen har du en helt meningslös loop som alltid kommer sluta i att slump_positiv = 0.
En variabel du inte använder mer.
Sen har du en insertsats som är fel.
Du avslutar funktionen med att skapa ett recordset av insertsatsen.
Och du returnerar inget värde från funktionen.
Okej nu har jag gjort en del förändringar.
Så här ser det ut nu:
Dim conn 'connection variabeln
Set conn = Server.CreateObject("ADODB.Connection")
conn.open "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;DATABASE=sthlmonline;USER=root;PASSWORD=;"
Dim arrPersonlighet_positiv(12) ,arrPersonlighet_negativ(12) 'deklarera vektorerna
dim lngrand1,lngrand2,SQL,SQL2 'slump variabeln och SQL variablerna
'Lägg in positiva egenskaper i vektorn arrPersonlighet_positiv
arrPersonlighet_positiv(0) = "charmtroll"
arrPersonlighet_positiv(1) = "hyper trevlig"
arrPersonlighet_positiv(2) = "mycket trevlig"
arrPersonlighet_positiv(3) = "trevlig"
arrPersonlighet_positiv(4) = "omtänksam"
arrPersonlighet_positiv(5) = "socialt monster"
arrPersonlighet_positiv(6) = "lojal"
arrPersonlighet_positiv(7) = "kärleksfull"
arrPersonlighet_positiv(8) = "förstående"
arrPersonlighet_positiv(9) = "företagssam"
arrPersonlighet_positiv(10) = "positiv"
arrPersonlighet_positiv(11) = "aktiv"
arrPersonlighet_positiv(12) = "skämtare"
'Lägg in negativa egenskaper i vektorn arrPersonlighet_negativ
arrPersonlighet_negativ(0) = "otålig"
arrPersonlighet_negativ(1) = "oempatisk"
arrPersonlighet_negativ(2) = "illojal"
arrPersonlighet_negativ(3) = "högljudd"
arrPersonlighet_negativ(4) = "asocial"
arrPersonlighet_negativ(5) = "omoralisk"
arrPersonlighet_negativ(6) = "vresig"
arrPersonlighet_negativ(7) = "frossare"
arrPersonlighet_negativ(8) = "likgiltig"
arrPersonlighet_negativ(9) = "aningen pervers"
arrPersonlighet_negativ(10) = "dryckesgill"
arrPersonlighet_negativ(11) = "missbrukare"
arrPersonlighet_negativ(12) = "okänslig"
'slumpa en av dessa personligheter och lägg till den i tbl_invanare
randomize
lngrand=0
do until lngrand<12 and lngrand>0
lngrand = round(rnd*ubound(arrPersonlighet_positiv),0)
loop
randomize
lngrand2=0
do until lngrand2<12 and lngrand2>0
lngrand2 = round(rnd*ubound(arrPersonlighet_negativ),0)
loop
SQL = "INSERT INTO tbl_invanare (personlighet_pos, personlighet_neg) VALUES('" & arrPersonlighet_positiv(lngrand) & "','" & arrPersonlighet_negativ(lngrand2) & "')"
SQL2 = "SELECT personlighet_pos, personlighet_neg FROM tbl_invanare ORDER BY ID DESC"
rs = conn.Execute(SQL)
rs2 = conn.Execute(SQL2) 'hämtar datan från tbl_invanare
Response.Write"Din invånare är " & rs2("personlighet_neg") & " men " & rs2("personlighet_pos") &" <a href='index.asp'>Tebax</a>"
set conn = nothing
set rs = nothing
set rs2 = nothing
Nu funkar det som jag vill iallafall :)
Men eftersom en utav dem positiva egenskaperna är "socialt monster" och en utav dem negativa egenskaperna är "asocial" så händer det ju ibland att dem här två egenskaperna hamnar tillsammans (dock inte så ofta)
Och det ser ju helt galet ut...att personen är "asocial men ett socialt monster"
Hur ska jag fixa det?
265 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e