Avatar billede alsvik Nybegynder
07. april 2008 - 09:47 Der er 1 kommentar og
1 løsning

Kode/inputelt i ASP

Jeg har en form, som sender data til min database på min server.
Den blev færdig igår aftes (sådan da - mangler stadig noget med tiden som ikke indsættes korrekt i databasen)

Jeg vil gerne sikre mig at det KUN er mig som kan bruge formen. Jeg har ikke fast IP og bruger ofte flere forskellige computere og nogle gange også min telefon.
Så jeg tænkte at det måske var muligt at tilføje et input-felt som skal udfyldes og at formularen kun sendes hvis input-feltet er udfyldt korrekt. Kan det lade sig gøre og er der nogen så ved hvordan?

Her er min form:
(og hvis nogen ved hvordan jeg får "time" til at virke, så sig endelig til - det er et tillægsspørgsmål)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<%

Dim my_conn, rs, strSQL

Set my_conn = createobject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")


my_conn.open = "DRIVER={MySQL ODBC 3.51 Driver};"_
& "SERVER=localhost;"_
& "DATABASE=alsvik_dk;"_
& "UID=bruger; PWD=password; OPTION=35;"

strSQL = "SELECT * FROM blog ORDER BY [time] DESC"


my_conn.Execute("INSERT INTO blog (id, name, email, comments, time) values('(id)','"& Request.Form("name") & "', '"& Request.Form("email") &"', '"& Request.Form ("comments") &"', '(time)')")





%>

<form name="write" method="post" action="">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="11%">name:</td>
    <td width="89%"><input name="name" type="text" id="name" size="100"></td>
  </tr>
  <tr>
    <td valign="top">comments:</td>
    <td><textarea name="comments" cols="100" rows="20" id="comments"></textarea></td>
  </tr>
  <tr>
    <td valign="top">email:</td>
    <td><input name="email" type="text" id="email" value="" size="100"></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>
     
        <div align="center">
          <input type="submit" name="submit" value="Send">
      </div></td>
  </tr>
</table>
</form>
Avatar billede fennec Nybegynder
07. april 2008 - 09:54 #1
Smid et password felt ind og lav et tjek på den i ASP:
<%
if request.form("password") = "ditKodeOrd" then
Dim my_conn, rs, strSQL

Set my_conn = createobject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")


my_conn.open = "DRIVER={MySQL ODBC 3.51 Driver};"_
& "SERVER=localhost;"_
& "DATABASE=alsvik_dk;"_
& "UID=bruger; PWD=password; OPTION=35;"

strSQL = "SELECT * FROM blog ORDER BY [time] DESC"


my_conn.Execute("INSERT INTO blog (id, name, email, comments, time) values('(id)','"& Request.Form("name") & "', '"& Request.Form("email") &"', '"& Request.Form ("comments") &"', '(time)')")
end if
%>
...
...
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="11%">password:</td>
    <td width="89%"><input name="pass" type="password" id="pass" size="100"></td>
  </tr>  <tr>
    <td width="11%">name:</td>
    <td width="89%"><input name="name" type="text" id="name" size="100"></td>
  </tr>
...
...
Avatar billede w13 Novice
07. april 2008 - 09:59 #2
Prøv at ændre til:
----------------------------------------------
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<%If Request.Form("submit")="Send" And Request.Form("kode")="hiddencode" Then
    Dim my_conn, rs, strSQL

    Set my_conn = createobject("ADODB.Connection")
    Set rs = Server.CreateObject("ADODB.Recordset")

    my_conn.open = "DRIVER={MySQL ODBC 3.51 Driver};"_
    & "SERVER=localhost;"_
    & "DATABASE=alsvik_dk;"_
    & "UID=bruger; PWD=password; OPTION=35;"

    my_conn.Execute("INSERT INTO blog (id, name, email, comments, time) values('(id)','"& Request.Form("name") & "', '"& Request.Form("email") &"', '"& Request.Form ("comments") &"', '"&Time&"')")

    Response.Write "INSERT INTO blog (id, name, email, comments, time) values('(id)','"& Request.Form("name") & "', '"& Request.Form("email") &"', '"& Request.Form ("comments") &"', '"&Time&"')"
End If
%>

<form name="write" method="post" action="">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td width="11%">name:</td>
    <td width="89%"><input name="name" type="text" id="name" size="100"></td>
  </tr>
  <tr>
    <td valign="top">comments:</td>
    <td><textarea name="comments" cols="100" rows="20" id="comments"></textarea></td>
  </tr>
  <tr>
    <td valign="top">email:</td>
    <td><input name="email" type="text" id="email" value="" size="100"></td>
  </tr>
  <tr>
    <td valign="top">Kode:</td>
    <td><input name="kode" type="text" value="" size="100"></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>
     
        <div align="center">
          <input type="submit" name="submit" value="Send">
      </div></td>
  </tr>
</table>
</form>
----------------------------------------------
Så skal du bare ændre "hiddencode" til din ønskede kode.
Jeg har i øvrigt sat den til at udskrive, hvad den prøver at gemme i databasen.
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