Hej på er! Jag håller på med en grej där man ska regga sig som medlem. Om det finns en "Patrik" registrerad, så kan den ändå regga en användare om personen reggar sig som "patrik", det är ju lite knäppt. Går det att få den här koden till att göra någon icke-skillnad på stora och små bokstäver? :)
Den här koden använder jag nu som kollar om användarnamnet finns, men jag vill ha den så den inte regga någon "patrik" även fast det är "Patrik" som är registrerad.
Tack på förhand!
IF connect.execute("select * from members where username='" & request.form("username") & "'").eof then
Session("meddelande") = "Det användarnamnet var redan taget! Försök med något annat"
RecSet.Close
Response.Redirect "bli_medlem.asp?user="
End If
<%
Addera = "Select * From members"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
RecSet.AddNew
RecSet("fnamn") = Request.Form("fnamn")
RecSet("enamn") = Request.Form("enamn")
RecSet("username") = Request.Form("username")
RecSet("losen") = Request.Form("pw1")
RecSet("epost") = Request.Form("epost")
RecSet("msn") = Request.Form("msn")
RecSet("stad") = Request.Form("stad")
RecSet("press") = "Användaren har inte gjort någon presentation ännu."
RecSet("bild") = "ingen.jpg"
RecSet("datum") = Now()
RecSet("status") = "Offline"
RecSet.Update
Connect.Close
Set RecSet = nothing
Set Connect = nothing
Session("meddelande") = "Nu är du registrerad. Prova att logga in på förstasidan!"
Response.Redirect "bli_medlem.asp?user=reggad"
%
Jag får fel på "RecSet.Update", varför?
Felet:
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E2F)
[Microsoft][ODBC Microsoft Access Driver] The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship. Change the data in the field or fields that contain duplicate data, remove the index, or redefine the index to permit duplicate entries and try again.
/jobb/theevents.net/add_member.asp, line 62
Om du ska uppdatera vad gör den här??
Sen är det så att den försöker spara en ny post med samma id som en annan ..och det är en NO NO i primärnyklar...
Primärnyklar är unika(one of a kind)
Om du ska uppdatera vad gör den här??
Sen är det så att den försöker spara en ny post med samma id som en annan ..och det är en NO NO i primärnyklar...
Primärnyklar är unika(one of a kind)
Mvh Paddan
Man ska spara en helt ny användare, så den ska inte uppdatera.
Informationen kommer från ett forumlär på förstasidan där man kan registrera sig till backstage-prylar ju! :) Hur gör jag för att få det att fungera?
Sen en sak till...hur vet den vilket ID den ska updatera...skicka med Id:et genom en gömd textruta i formuläret...textrutan kan tex heta id!
och sätt :
Addera = "Select * From members where ID =" & Request.Form("id") & ""
Sen en sak till...hur vet den vilket ID den ska updatera...skicka med Id:et genom en gömd textruta i formuläret...textrutan kan tex heta id!
och sätt :
Addera = "Select * From members where ID =" & Request.Form("id") & ""
Mvh paddan
Man ska spara en helt ny användare, så den ska inte uppdatera.
Informationen kommer från ett forumlär på förstasidan där man kan registrera sig till backstage-prylar ju! Hur gör jag för att få det att fungera?
Oki..såg lita fel...
Det databasen säger är att den försöker spara ett ID som redan finns...
Kolla hur det ser ut i din databas..
Har du en primärnykel...!??
Du hade rätt, ett fält var indexerat. Tack! Men jag har fler problem.
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("db/fanclub.mdb")&";pwd=losen"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "Select username From members"
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
Do Until RecSet.EOF
IF connect.execute("select * from members where ucase(username)='" & ucase(request.form("username")) & "'").eof then
Session("meddelande") = "<p>Det användarnamnet var redan taget! Försök med något annat"
RecSet.Close
Response.Redirect "bli_medlem.asp?user="
End If
RecSet.MoveNext
Loop
RecSet.Close
Den här koden kollar så att inte användarnamnet finns. Men den skickar användaren till bli_medlem.asp?user=" och skriver ut session-meddelandet om att användarnamnet redan finns, ÄVEN fast det inte finns :) Skummt?
Lita konstig kod det där eftersom det säger till at den ska kolla om namnet finns men om namnet finns redan så skickas du tillbaka men om det inte finns...vad händer då?
Prova denna koden:
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("db/fanclub.mdb")&";pwd=losen"
Set RecSet = Server.CreateObject("ADODB.Recordset")
Do Until RecSet.EOF
IF Request.Form("username") = RecSet("username") Then
Session("meddelande") = "Det användarnamnet var redan taget! Försök med något annat"
Response.Redirect "bli_medlem.asp?user="
END IF