Avatar billede koden12 Nybegynder
18. januar 2004 - 23:09 Der er 10 kommentarer og
1 løsning

Sådan helt almindeligt ?

Hvordan laver jeg sådan et helt almindeligt ? med Input bokse hvor brugeren kan sætte noget ind som havner i access database´n med Action post og alt det der.
Gerne så det kan ses igen fra databasen.
Skal der 2 sider til en med inputboksene og en med vis hvad der er i databasen. ?

VH
koden12
Avatar billede thesurfer Nybegynder
18. januar 2004 - 23:17 #1
Du kan læse om databaser i lektionerne 17-22 på:
http://html.dk/tutorials/asp/
Avatar billede thesurfer Nybegynder
18. januar 2004 - 23:19 #2
Og du kan godt lave det hele på 1 side.. du bruger bare request_method..
f.eks:

<%
if request.servervariable("request_method") = "POST" then
' brugeren har klikket på Submit-knappen, dvs der er POSTet.
' derfor hentes de data brugeren har skrevet, og de gemmes i databasen
end if
%>
Avatar billede koden12 Nybegynder
18. januar 2004 - 23:30 #3
Ja som det ses har jeg set det på HTML siden ::::

<form action="indsaet.asp" method="post">
<input type="text" name="Fornavn">
<input type="submit" value="Gem">
</form>


Formularen submittes til filen indsaet.asp, hvor du som gennemgået i lektion 11 kan få fat på brugerens input ved at requeste indeholdet af formularens felter. I det konkrete eksempel kunne en SQL sætning således skrives:

strSQL = "Insert into personer (Fornavn) values('" & Request.Form("Fornavn") & "')"


På samme måde er det naturligvis muligt at hente data fra f.eks. cookies, sessions eller querystring.

**********

Men der må MANGLE NOGET !
Jeg er vandt til PHP med variabler som
$_POST = [navn];

og alt det der men hvordan laves det i ASP ?

HTML siden går tilbage lige der hvor det er ved at blive til noget så er det link : " tilbage til lektion 11 "  og så er man jo lige vit ?
For der står ikke noget om databaser eller noget om variabler

VH
koden12
Avatar billede thesurfer Nybegynder
18. januar 2004 - 23:34 #4
Det er godt at du læser lektionerne. Læs lige lektion 11 (formular):
http://html.dk/tutorials/asp/lektion11.asp
Avatar billede koden12 Nybegynder
18. januar 2004 - 23:52 #5
Ja, ja men den kommer jo ikke ind i nogen database.. det ses bare  Den skriver Hej koden12...
Men hvor er access databasen som det skulle sættes ind i ?

VH
koden12
Avatar billede thesurfer Nybegynder
18. januar 2004 - 23:52 #6
hmm.. jeg fik ikke læst dit indlæg ordentligt igennem..
mener du: strBrugernavn = request.form("Fornavn") ?
Avatar billede thesurfer Nybegynder
18. januar 2004 - 23:53 #7
hmm.. har du husket at oprette forbindelse til databasen, og derefter execute sql strengen?
Avatar billede koden12 Nybegynder
19. januar 2004 - 14:57 #8
Skal der ikke laves nogel variabler ?
fx
dim fornavn

fornavn = ???

Eller hur ?

VH
koden12
Avatar billede koden12 Nybegynder
19. januar 2004 - 15:38 #9
Måske noget i retning af :  Eller hur ????

<HTML>
<HEAD>
<TITLE>Your Company: Marketing Promotion</TITLE>
</HEAD>
<BODY BGCOLOR="WHITE">
<BLOCKQUOTE>
Please enter your ID number below and click the "Enter Promotion" button.<P>
<FORM ACTION="promo1.asp" METHOD="POST">
<INPUT TYPE="TEXT" NAME="ID" SIZE=10><P>
<INPUT TYPE="SUBMIT" VALUE="Enter Promotion">
</FORM>
</BODY>
</HTML>






Listing 33.8
Code Listing for promo1.asp

<%
dim error
dim ID
error=""

if Not(IsNumeric(request.form("ID"))) then  'ID Not Numeric - stop
  call sub_error                  ' call error and don't come back
else
  ID = request.form("ID")        ' ID Fine, continue

' Create Connection
set dConn = Server.CreateObject("ADODB.Connection")
dConn.Open "promotion"

' Build SQL statement
SQL =      "Select * "
SQL = SQL + "FROM Clients "
SQL = SQL + "WHERE ClientID = " & request.form("ID")

' Execute Query
Set dRS = dConn.Execute(SQL)

if (dRS.EOF) AND (dRS.BOF) then    ' No record exists, print error
    call sub_empty
else
    call sub_Confirm
end if

' Clean Up RecordSets for Better
' memory management
dRS.Close
Set dRS=Nothing

end if  ' Else from Login Error

' BEGIN SUBPROCEDURES

' Sub ERROR:  Provide user with message stating that entered ID is
' invalid, provide link to return to main page and start again

Sub sub_error
%>
<HTML><HEAD><TITLE>Invalid ID Number</TITLE></HEAD>
<BODY BGCOLOR="WHITE">
<H1>Invalid ID Number</H1>
The ID number you entered is not valid.  Please click the Continue
button below and re-enter the number from the letter you received in the
mail.<P>
<FORM ACTION="index.html" MEHOD="POST">
<INPUT TYPE="SUBMIT" VALUE="Continue"
</FORM>
</BODY></HTML>
<%
end sub

' Sub empty:  Tells user no matching records were found and reprompts for
promotion ID number. 
Sub sub_empty
%>
<HTML><HEAD><TITLE>No Matches Found</TITLE></HEAD>
<BODY BGCOLOR="WHITE">
<H1>No Matches Found</H1>
No records in our database matched the ID number you entered.  Please
click the Continue button below and re-enter the number from the letter
you received in the mail.<P>
<FORM ACTION="index.html" MEHOD="POST">
<INPUT TYPE="SUBMIT" VALUE="Continue"
</FORM>
</BODY></HTML>
<%
end sub

' Sub Confirm:  Provide user with current data from database and
' allow user to update/modify information. 

sub sub_confirm
%>
<HTML><HEAD><TITLE>Contact Information</TITLE></HEAD>
<BODY BGCOLOR="WHITE">
Please review the information below, making corrections where necessary. 
Click the "Continue" button when you're finished.

<FORM ACTION="promo2.asp" METHOD="POST">
<TABLE>
  <TR>
  <TD><B>First Name</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="FirstName" VALUE="<%=dRS("FirstName")%>"
        SIZE=35></TD>
  </TR>   
  <TR>
  <TD><B>Last Name</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="LastName" VALUE="<%=dRS("LastName")%>"
        SIZE=35></TD>
  </TR>
  <TR>
  <TD><B>Title</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="Title" VALUE="<%=dRS("Title")%>" SIZE=35></TD>
  </TR>
  <TR>
  <TD><B>Company</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="Company" VALUE="<%=dRS("Company")%>"
      SIZE=35></TD>
  </TR>

    <%if (NOT IsEmpty(Address2)) then%>
  <TR>
  <TD ROWSPAN=2 VALIGN="TOP"><B>Address</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="Address1" VALUE="<%=dRS("Address1")%>"
        SIZE=35></TD>
  </TR>
  <TR>
  <TD><INPUT TYPE="TEXT" NAME="Address2" VALUE="<%=dRS("Address2")%>"
        SIZE=35></TD>
  </TR>
    <%else%>
  <TR>
  <TD ROWSPAN=2 VALIGN="TOP"><B>Address</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="Address1" VALUE="<%=dRS("Address1")%>"
        SIZE=35></TD>
  </TR>
  <TR>
  <TD><INPUT TYPE="TEXT" NAME="Address2" VALUE="<%=dRS("Address2")%>"
        SIZE=35></TD>
  </TR>
    <%end if%>
      <TR>
  <TD><B>City</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="City" VALUE="<%=dRS("City")%>" SIZE=35>
  </TD>
  </TR>
  <TR>
  <TD><B>State</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="State" VALUE="<%=dRS("State")%>" SIZE=35>
  </TD>
  </TR>
  <TR>
  <TD><B>Zip Code</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="Zip" VALUE="<%=dRS("Zip")%>" SIZE=35>
  </TD>
  </TR>   
  <TR>
  <TD><B>Phone</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="Phone" VALUE="<%=dRS("Phone")%>"
        SIZE=35></TD>
  </TR>   
  <TR>
  <TD><B>Fax</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="Fax" VALUE="<%=dRS("Fax")%>" SIZE=35>
  </TD>
  </TR>   
  <TR>
  <TD><B>E-mail</B></TD>
  <TD><INPUT TYPE="TEXT" NAME="Email" VALUE="<%=dRS("Email")%>" SIZE=35>
  </TD>
  </TR>   
  <TR>
  <TD COLSPAN="2"><HR NOSHADE WIDTH="100%"></TD>
  </TR>
  <TR>
  <TD COLSPAN="2"><B>Are you a decision maker for
    technology purchases?</B></TD>
  </TR>
  <TR>
    <TD><INPUT TYPE="RADIO" NAME="Decide" VALUE="1">
        Yes</TD>
    <TD><INPUT TYPE="RADIO" NAME="Decide" VALUE="0">
        No</TD>
  </TR>
  <TR>
    <TD COLSPAN="2"><B>How much will you spend on new
    equipment this year?</B><BR>
    </TD>
  </TR>   
  <TR>
    <TD COLSPAN="2"><INPUT TYPE="TEXT" NAME="Amount"></TD>
  </TR>
  <TR>
    <TD COLSPAN="2"><INPUT TYPE="Submit" NAME="Continue"></TD>
  </TR>   
</TABLE>
<INPUT TYPE="HIDDEN" NAME="ID" VALUE="<%=ID%>">
</FORM>
</BODY>

</HTML>
<%
end sub
%>




Listing 33.9
Code Listing for promo2.asp

<%
dim ID
dim FirstName
dim LastName
dim Title
dim Company
dim Address1
dim Address2
dim City
dim State
dim Zip
dim Phone
dim Fax
dim Email
dim Decide
dim Amount

FirstName = request.form("FirstName")
LastName  = request.form("LastName")
Title    = request.form("Title")
Company  = request.form("Company")
Address1  = request.form("Address1")
Address2  = request.form("Address2")
City      = request.form("City")
State    = request.form("State")
Zip      = request.form("Zip")
Phone    = request.form("Phone")
Fax      = request.form("Fax")
Email    = request.form("Email")
Decide    = request.form("Decide")
Amount    = request.form("Amount")
ID        = request.form("ID")

' Build SQL statement

SQL = "UPDATE  Clients "
SQL = SQL + "SET FirstName='" & FirstName  & "',LastName='" & LastName
SQL = SQL + ",Title= '" & Title & "',Company='" & Company & "',"
SQL = SQL + "Address1='" & Address1 & "',Address2='" & Address2 &"',"
SQL = SQL + "City='" & City & "',State='" & State & "',"
SQL = SQL + "Zip='" & Zip & "',Phone='" & Phone & "',"
SQL = SQL + "Fax='" & Fax & "',Email='" & Email & "',"
SQL = SQL + "Decide='" & Decide & "',"
SQL = SQL + "Amount='" & Amount
SQL = SQL + "WHERE ClientID = " & ID

' Execute Query - execute the update

Set dRS = dConn.Execute(SQL)

' Clean Up RecordSets for Better
' memory management
dRS.Close
Set dRS=Nothing

%>

<HTML>
<HEAD>
<TITLE>Information Updated!</TITLE>
</HEAD>
<BODY BGCOLOR="WHITE">
<H2>Thank you, <%=FirstName%></H2>
Thanks for participating in our survey.  We look forward to
supporting you in the future.
</BODY>
</HTML>



VH
koden12
Avatar billede thesurfer Nybegynder
19. januar 2004 - 18:52 #10
Jeg ved ikke helt hvad, det er der galt hos dig :)
Hvis du læser lektion 11 (formular) og lektionerne 17-22, kan du nemt lave det du vil.

Og jeg tror at der er en fejl, i den kode du skrev i dit sidste indlæg.. fejlen er her:

SQL = SQL + "Amount='" & Amount
SQL = SQL + "WHERE ClientID = " & ID

Der mangler et ' tegn. Så det skal enten være:
SQL = SQL + "Amount='" & Amount & "' "

eller

SQL = SQL + "' WHERE ClientID = " & ID
Avatar billede koden12 Nybegynder
27. januar 2004 - 01:06 #11
Fandt et eksempel
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