Avatar billede musti776 Nybegynder
27. august 2004 - 13:16 Der er 10 kommentarer og
2 løsninger

Aktivering af medlemmerne!

Hej alle sammen...

Jeg vil meget gerne have lidt hjælp til at lave et medlemssystem hvor jeg har mulighed for at
aktivere medlemmerne før de kan skrive eller gøre noget på siden.

Mit tabel består af:

Id       
Medlems_nr   
Navn       
Efternavn
Nickname
Password
Email
Web
Land
Dato

Når man så tilmelder sig skal jeg kunne se alle tilmeldingerne på en side
også aktivere dem derfra.
Kan nogle fortælle mig hvordan jeg kan gøre det?

Musti
Avatar billede and_ Nybegynder
27. august 2004 - 13:26 #1
du laver en post mere der hedder aktiv og sætter denne til tal

så kan du skelne imellem med 0 og 1

og så kan du fx lave et kald:

sql = "select * from tabellen where aktiv = 0"

Nu viser den alle dem der ikke er aktiveret...
og du kan så ændre værdien herfor...
Avatar billede eagleeye Praktikant
27. august 2004 - 13:34 #2
Du kan tilføje en kolonne mere som hedder aktiv i din tabel så er her noget kode du kan bruge. Du skal lige rette connection strengen til så den passer med det du normalt bruger.
Kolonne aktiv skal være et tal default 0 : 0=ikke aktiv 1=aktiv

<%
set conn=server.CreateObject("ADODB.Connection")
Conn.Open "DIn Connection String her"

if request.servervariables("REQUEST_METHOD") = "POST" then
  'opdater
  ider = Request.Form("aktiv")
  if ider<>"" then
    SQL = "update medlemer set aktiv=1 where id in [" &ider & "]"
    Conn.Execute(SQL)
  End if
  Response.redirect(request.Servervariables("SCRIPT_NAME"))
end if
%>

<html>
<head><title>Godkend brugerne</title></head>
<body>
<%
sql = "select * from medlemer where aktiv=0"
set rs=Conn.Execute(SQL)

response.write "<table>"
response.write "<form action=""" & request.ServerVariables("SCRIPT_NAME")&""" method=""post"">"

response.write "<tr><td>Aktiver</td><td>ID</td><td>Medlems nr</td><td>navn</td><td>Efternavn</td><td>nickname</td><td>email</td><td>web</td><td>land</td><td>dato</td></tr>"
do while not rs.EOF
  response.write "<tr>"
  response.write "<td>Aktiver <input type=""checkbox"" name=""aktiv"" value=""" & rs("id") & """></td>"
  response.write "<td>" & rs("id") & "</td>"
  response.write "<td>" & rs("Medlems_nr ") & "</td>"
  response.write "<td>" & rs("navn") & "</td>"
  response.write "<td>" & rs("efternavn") & "</td>"
  response.write "<td>" & rs("nickname") & "</td>"
  response.write "<td>" & rs("email") & "</td>"
  response.write "<td>" & rs("web") & "</td>"
  response.write "<td>" & rs("land") & "</td>"
  response.write "<td>" & rs("dato") & "</td>"

  response.write "</tr>"
  rs.Movenext
loop
%>
</table>
<input type="submit" name="aktiver" value="Aktiver">
</form>
</body>
</html>
Avatar billede eagleeye Praktikant
27. august 2004 - 13:40 #3
hov så er der lige en fejl i denne linje:
SQL = "update medlemer set aktiv=1 where id in [" &ider & "]"

Skulle være () og ikke []:
SQL = "update medlemer set aktiv=1 where id in (" &ider & ")"
Avatar billede musti776 Nybegynder
27. august 2004 - 14:10 #4
hej begge to

jeg leger lige lidt med dit kode eagleeye, kommer tilbage når jeg får problemos... :)
Avatar billede musti776 Nybegynder
27. august 2004 - 14:17 #5
Hej igen :)

Eagleeye, det ser ud til at virke nydeligt men jeg har lige et spg.
Når aktiv = 0 dvs. de ikke er aktiveret fra min side, kan de så ikke logge ind på siden eller hvad? Eller skal der noget andet kode til det?

De må på en måde godt logge på men jeg vil bare ikke have at de skal kunne skrive noget i gæstebog osv. inden de er aktiveret fra min side...
Avatar billede musti776 Nybegynder
27. august 2004 - 14:35 #6
eagleeye?
Avatar billede eagleeye Praktikant
27. august 2004 - 15:36 #7
Hvis aktiv = 0 og de ikke må logge ind kan du tilføje det i den SQL sætning som tjekker brugernavn og password:
sql = "select * from medlemer where aktiv=1 AND nickname='"&nick&"' AND password='"&pass&"'"

Hvis du vil sikre de ikke må skrive i din gæstebog kunne du lave sådan men gerne må logge ind så kan du gemme aktiv i en sesseion.
session("aktiv")=rs("aktiv")
Før du udskrivr form'en til gæste bogen kan du med en if sætning sikre de er aktive for at bruge den:
if session("aktiv")>0 then
  vis formene
..
Avatar billede and_ Nybegynder
27. august 2004 - 16:14 #8
du kan også bare ligge den ved knappen:

if session("aktiv") then
  response.write("<input type=""submit"" value=""ok"">")
else
  response.write("<input type=""button"" onclick=""alert('Du er ikke godkendt til at kunne skrive indlæg endnu!');"" value=""ok"">")
end if
Avatar billede and_ Nybegynder
27. august 2004 - 16:15 #9
if session("aktiv") = "1" then
Avatar billede musti776 Nybegynder
30. august 2004 - 00:50 #10
hej drenge, undskyld ventetiden

jeg synes i begge to har hjulpet mig igang og derfor vil jeg meget gerne fordele de points imellem jer, hvis Hr. and også lige vil ligge et svar :)
Avatar billede and_ Nybegynder
30. august 2004 - 10:40 #11
Ikke så meget... Ørneøje hjalp dig mest... 10 må være end nok... Er det ok for dig eagle?
Avatar billede musti776 Nybegynder
30. august 2004 - 13:37 #12
Takker igen til jer begge to

Musti
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester