Avatar billede no_doubt Nybegynder
02. september 2003 - 19:29 Der er 5 kommentarer og
1 løsning

cases vil ikke fungere

Følgende kode skulle gerne gøre følgende
1. Hvis emailen i querystringen er lig med mailen i databasen og koden i querystringen er lig med koden i datasen, samt valideret er lig med False SÅ skal der updateres til True i Valideret feltet
("Din mail er nu valideret")

2: Hvis Hvis emailen i querystringen er lig med mailen i databasen og koden i querystringen er lig med koden i datasen samt hvis valideret = True
("Din mail er nu valideret")

3: Hvis der er uoverenstemmelse i de samme ting oven over og der derfor ikke kan valideres skal vises den nederste form
("Valideringen kunne ikke genneføres pga fejl i email eller kodeord!!")

<% response.buffer = true %>
<center>
<% if request.querystring("mail") <> "" then
mail = request.querystring("mail")
set conn = server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
strSQL = "SELECT * FROM brugere where email = '"&mail&"' AND valideret = True"
set rs = Conn.Execute(strSQL)
%>
<font color="#008000"><b>
<p>Din mail er allerede valideret<Br> Du viderestilles automatisk om 10 sekunder!</font>
<script type="text/javascript">
setTimeout('location.href= \'default.asp\';',10000);
</script>
<%end if%>

<% if request.querystring("mail") <> "" AND request.querystring("kode") <> "" then
mail = request.querystring("mail")
koden = request.querystring("kode")
set conn = server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
strSQL = "SELECT * FROM brugere where email = '"&mail&"' AND valideret = False"
set rs = Conn.Execute(strSQL)
if not rs.EOF then
strSQL = "update brugere set valideret=true where email = '"&mail&"' AND kode = '"&koden&"'"
Conn.Execute(strSQL)%>
&nbsp;
<font color="#008000"><br>
Din mail er nu valideret<Br> Du viderestilles automatisk om 10 sekunder!</font>
<script type="text/javascript">
setTimeout('location.href= \'default.asp\';',10000);
</script>
<%
else
end if
end if%>


<% if request.querystring("mail") <> "" and request.querystring("kode") <> "" then
mail = request.querystring("mail")
koden = request.querystring("kode")
set conn = server.CreateObject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
strSQL = "SELECT * FROM brugere where email <> '"&mail&"' OR kode <> '"&koden&"' and valideret = False"
set rs = Conn.Execute(strSQL)
if not rs.EOF then%>
<p><font face="Arial" size="2"><b><font color="#FF0000"><b>Valideringen kunne ikke genneføres pga fejl i email eller kodeord!!</b></font><b>&nbsp;</b></b></font>
<form method="POST" action="valideringx.asp">
  <table border="0" width="212">
    <tr>
      <td width="50" style="border: 1 solid #000000"><font face="Arial" size="2">Email</font></td>
      <td width="150" style="border: 1 solid #000000"><font face="Arial" size="2"><input type="text" name="mail" size="20"></font></td>
    </tr>
    <tr>
      <td width="50" style="border: 1 solid #000000"><font face="Arial" size="2">Kodeord</font></td>
      <td width="150" style="border: 1 solid #000000"><font face="Arial" size="2"><input type="text" name="kode" size="20"></font></td>
    </tr>
    <tr>
      <td width="50" style="border: 1 solid #000000"><font face="Arial" size="2">Valider</font></td>
      <td width="150" style="border: 1 solid #000000">
        <p align="center"><font face="Arial" size="2"><input type="submit" value="Valider" name="B1"></font></td>
    </tr>
  </table>
</form>

Nogen der kan dreje denne
Avatar billede no_doubt Nybegynder
02. september 2003 - 19:47 #1
Slet ingen ?
Avatar billede vbcoder Nybegynder
02. september 2003 - 19:58 #2
punkt 1

der hvor du har valideret = true/false har jeg erfaring for at man bør bruge -1 for true og 0 for false

punkt 2

i din 3. validering er den dømt til at fejle

du skal istedet for

SELECT * FROM brugere where email <> '"&mail&"' OR kode <> '"&koden&"' and valideret = False"

lave

SELECT * FROM brugere where email = '"&mail&"' AND kode = '"&koden&"' and valideret = False"

Du skal så validere selve recordset'et - om det er tomt eller ....

if rs.eof then
'fejl i validering

//vbcoder
Avatar billede eagleeye Praktikant
02. september 2003 - 19:59 #3
Prøv med dette, det er som jeg tolker de 3 ting du skriver:



<% response.buffer = true %>
<center>
<%
mail = request.querystring("mail")
koden = request.querystring("kode")

brugerFundet = false
if mail <> "" AND koden <> "" then
  set conn = server.CreateObject("ADODB.Connection")
  conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
  strSQL = "SELECT * FROM brugere where email = '"&mail&"' AND kode = '"&koden&"' AND valideret=False"
  set rs = Conn.Execute(strSQL)
  if NOT rs.EOF then
    brugerFundet = true
    strSQL = "update brugere set valideret=true where email = '"&mail&"' AND kode = '"&koden&"'"
    Conn.Execute(strSQL)
%>
<font color="#008000"><b>
<p>Din mail er allerede valideret<Br> Du viderestilles automatisk om 10 sekunder!</font>
<script type="text/javascript">
setTimeout('location.href= \'default.asp\';',10000);
</script>
<%
  end if

  '2. email og kode indtastet og tjek for om validering er true
  if brugerFundet = false then
    strSQL = "SELECT * FROM brugere where email = '"&mail&"' AND kode = '"&koden&"' AND valideret=True"
    set rs = Conn.Execute(strSQL)
    if NOT rs.EOF then
      brugerFundet = true
%>
<font color="#008000"><b>
<p>Din mail er allerede valideret<Br> Du viderestilles automatisk om 10 sekunder!</font>
<script type="text/javascript">
setTimeout('location.href= \'default.asp\';',10000);
</script>
<%
    end if
  end if
end if
%>


<%
if brugerFundet = false then
%>
<p><font face="Arial" size="2"><b><font color="#FF0000"><b>Valideringen kunne ikke genneføres pga fejl i email eller kodeord!!</b></font><b>&nbsp;</b></b></font>
<form method="POST" action="valideringx.asp">
  <table border="0" width="212">
    <tr>
      <td width="50" style="border: 1 solid #000000"><font face="Arial" size="2">Email</font></td>
      <td width="150" style="border: 1 solid #000000"><font face="Arial" size="2"><input type="text" name="mail" size="20"></font></td>
    </tr>
    <tr>
      <td width="50" style="border: 1 solid #000000"><font face="Arial" size="2">Kodeord</font></td>
      <td width="150" style="border: 1 solid #000000"><font face="Arial" size="2"><input type="text" name="kode" size="20"></font></td>
    </tr>
    <tr>
      <td width="50" style="border: 1 solid #000000"><font face="Arial" size="2">Valider</font></td>
      <td width="150" style="border: 1 solid #000000">
        <p align="center"><font face="Arial" size="2"><input type="submit" value="Valider" name="B1"></font></td>
    </tr>
  </table>
</form>
<% end if %>
Avatar billede no_doubt Nybegynder
02. september 2003 - 20:07 #4
perfekt, eagle.
Avatar billede no_doubt Nybegynder
02. september 2003 - 20:07 #5
ligger du et svar
Avatar billede eagleeye Praktikant
02. september 2003 - 20:08 #6
Ok ;)
jeps her et svar.
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