Avatar billede jones279 Nybegynder
03. april 2004 - 13:53 Der er 30 kommentarer og
1 løsning

Newbie - før data med over i ny fil!

Hey! Jeg er rimelig newb, men har en side hvor jeg har hentet noget data med nogle ture fra en access database... Der har jeg lavet en knap, som jeg gerne ville have røg over til en anden side der hed tilmelding når man klikkede på den! Det går også meget fint, problemet er, at på tilmeldingssiden er der en dropdown menu hvor alle de forskellige ture ligger (hentet fra databasen) der ville jeg gerne have, at når man klikkede på knappen under den specifikke tur, så kunne man automatisk se hvilken tur man havde klikket på når man røg over på tilmeldingssiden - er det til at forstå?!?! :D

Koden på min forside til knappen

ser sådan ud:

<td colspan=2 align="right"><input class="button" onClick="parent.location='default.asp?site=tilmelding.asp'" type="Submit" value="Tilmeld"></td>

Alle turene har et ID, men IDet står ikke på forsiden...

Koden til dropdown boxen hedder:

    <td width="82">Vælg tur:</td>
      <td colspan="2"><select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option value="<%= rs("id") %>"><%= rs("titel") %></option>
        <%
rs.MoveNext
LOOP
RS.Close
%></select></td>


Jeg håber det hele gir mening og at i kan hjælpe mig! :)


På forhånd takker...!!
Avatar billede KingMedia Novice
03. april 2004 - 14:08 #1
I tabellen "arrangementer", har hvert arrangement vel et unikt ID ? :o)

Så sender du det jo bare som en form .. 


<form action="dinfil.asp" method="GET">
  <td width="82">Vælg tur:</td>
      <td colspan="2"><select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option name="turID" value="<%= rs("id") %>"><%= rs("titel") %></option>
        <%
rs.MoveNext
LOOP
RS.Close
%></select></td>
</form>


på den nye side laver du så følgende i toppen..

<%
turID = Request.Form("turID")
%>

og nu har du turens ID, så du kan lave følgende SQL sætning

<%
SQL = "SELECT * FROM arrangementer WHERE ID = '" & turID & "'"
Set rs = conn.Execute(SQL)
%>

Håber det gav dig lidt hjælp :o)

/Mads
Avatar billede KingMedia Novice
03. april 2004 - 14:12 #2
hov.. 

du skal bruge post metoden og ikke get...

altså .. du "pakker" din dropdown + submitknap ind i

<form action="dinFil.asp" method="post">

dine formularfelter..

</form>

/Mads
Avatar billede jones279 Nybegynder
03. april 2004 - 14:45 #3
Jep hver tur har et ID der bare hedder ID.... Jeg forstår ideen i at bruge det som en form, men dvs den side hvor tingene ligger på hedder forside.asp og den side hvor tilmeldings siden er på hedder tilmelding.asp... Men hvordan får jeg hevet ID ud fra forside.asp og smidt over i tilmelding.asp?? Du må lige uddybe lidt mere :) Så tror jeg at jeg fatter den...
Avatar billede KingMedia Novice
03. april 2004 - 14:49 #4
Jo ser du..

i din dropdown der looper du jo tabellen igennem, og udskriver hver turs value i dine <option> felter...

det vil sige, at allerede dér har du jo din ID :o)


når du så som jeg beskrev, laver det som en form, og overfører ID'en til næste side, så laver du den SQL sætning, der henter al info ud om den pågældende turID ..

og når det er gjort, kan du udskrive alt det du vil i den tabel med

rs("felt")

præcis som du gør det på din forside..

du skal bare i <form> tagget, ændre "dinFil.asp" til "tilmelding.asp" :o)

/Mads
Avatar billede jones279 Nybegynder
03. april 2004 - 14:49 #5
yepyep! Det har jeg gjort, men kommer IDét så automatisk med??
Avatar billede jones279 Nybegynder
03. april 2004 - 14:50 #6
Hmm har lige testet, gør den ikke... Jeg har bare brug for at hive IDet med over nu... Kan godt være jeg har gjort noget forkert... Men IDet står jo heller ingen steder på forsiden...
Avatar billede jones279 Nybegynder
03. april 2004 - 14:51 #7
<select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option value="<%= rs("id") %>"><%= rs("titel") %></option>
        <%
rs.MoveNext
LOOP
RS.Close
%></select>


Min tilmeldings dropdown ser sådan ud!
Avatar billede KingMedia Novice
03. april 2004 - 14:51 #8
prøv lige at liste koden fra din forside til mig :)

/Mads
Avatar billede jones279 Nybegynder
03. april 2004 - 14:52 #9
<form action="index.asp?site=tilmelding.asp" method="POST">

<%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
<tr><td colspan="3"><hr width=99% align=center noshade color=000000></td></tr>
<td colspan="3">


<table width="100%"><tr>
    <td width="30%"> <span class="overskrift"><a href="default.asp?site=tilmelding.asp" title="Foregår den: <%= rs("dato") %>"><%= rs("titel") %></a></span> </td>
    <td width="70%" align="right">Foregår den: <b><%= rs("dato") %></b></td>
</tr>
    <tr>
<td valign="top"><img alt="Tag med til <%= rs("titel") %> den <%= rs("dato") %>" height=100 width=150 src=images/<%= rs("pic") %>></td>   
    <td><%= rs("desc") %></td>
</tr>
<tr>
<td colspan=2 align="right"><input class="button" onClick="parent.location='default.asp?site=tilmelding.asp'" type="Submit" value="Tilmeld"></td>
</tr>
<%
rs.MoveNext
LOOP
RS.Close
conn.Close
Set conn = nothing
Set SQL = nothing
%>
Avatar billede jones279 Nybegynder
03. april 2004 - 14:53 #10
Hov, i bunden er der også en </form>
Avatar billede KingMedia Novice
03. april 2004 - 14:54 #11
<form action="tilmelding.asp" method="post">
<select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option name="turID" value="<%= rs("id") %>"><%= rs("titel") %></option>
        <%
rs.MoveNext
LOOP
RS.Close
%></select>

<input type="submit" value="Vælg Tur">

</form>


----------------------------------------

i din tilmelding.asp:
-----------------------------

turID = Request.Form("turID")

SQL = "SELECT * FROM arrangementer WHERE ID = '" & turID & "'"
Set rs = conn.Execute(SQL)

------------

så henbter du alt ud fra det ID som den tur har du vælger på forsiden :o)

/Mads
Avatar billede KingMedia Novice
03. april 2004 - 14:55 #12
ahh.. det giver meget mere mening :o)

Du skal bruge en submitknap, og ikke en onClick værdi i din knap :o)

/Mads
Avatar billede jones279 Nybegynder
03. april 2004 - 14:56 #13
Jamen problemet er, at der er flere felter på tilmeldingssiden, der er også noget der hedder navn, adresse osv... Og dem skal man jo selv udfylde.... Så virker det der da ikke??....

Jeg forstår ikke hvor det her skal hen:

turID = Request.Form("turID")

SQL = "SELECT * FROM arrangementer WHERE ID = '" & turID & "'"
Set rs = conn.Execute(SQL)
Avatar billede KingMedia Novice
03. april 2004 - 14:57 #14
felterne skal man selv udfylde jo :o)

Men det jeg fik forståelsen af var, at du ville kunne overføre turens ID til tilmeldingssiden,  ?

/Mads
Avatar billede KingMedia Novice
03. april 2004 - 15:00 #15
ok--  ret mig hvis jeg tager fejl.. 

du vil i dropdown menuen vise hvilken tur brugeren klikkede på , på den foregående side ?

/Mads
Avatar billede jones279 Nybegynder
03. april 2004 - 15:01 #16
Ja, der er jo en submit knap på forsiden, ( <td colspan=2 align="right"><input class="button" onClick="parent.location='default.asp?site=tilmelding.asp'" type="Submit" value="Tilmeld"></td> ) når man klikker på den, ville jeg have, at den røg videre til tilmelding.asp - MEN samtidig skulle dropdown boxen i tilmelding.asp skifte til den tur som man har klikket på... Altså hvis du fx klikker på turen med ID=1 så skulle den gerne stå på turen som er =1.... Til at forstå? Kan godt være jeg forklarer det dumt! Sætter lige 100 point af på den... Så får du dem hvis det hele lykkedes :D
Avatar billede KingMedia Novice
03. april 2004 - 15:03 #17
ahh.. 100 point er liiige i overkanten ..  den er meeeget nem ..  jeg misforstod dig bare *G*

gi mig lige 2 min, så får jeg den fixet ;o)
Avatar billede jones279 Nybegynder
03. april 2004 - 15:10 #18
Well, jeg har bare forklaret mig dårligt! :) Det må jeg bøde for, hæhæ... Eller også kan du evt hjælpe mig med et andet lille problem for de 100 point? :D
Avatar billede jones279 Nybegynder
03. april 2004 - 15:11 #19
Nej, mit andet problem er vidst ikke så småt alligevel hæhæ! :)Det må vente til en anden dag...
Avatar billede KingMedia Novice
03. april 2004 - 15:11 #20
forside.asp
--------------------------------
<%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
 
  ' Her henter vi hver enkelt tur's ID med i din loop
  turID = RS("ID")
 
%>
<tr><td colspan="3"><hr width=99% align=center noshade color=000000></td></tr>
<td colspan="3">


<table width="100%"><tr>
    <td width="30%"> <span class="overskrift"><a href="default.asp?site=tilmelding.asp&turID=<%= turID %>" title="Foregår den: <%= rs("dato") %>"><%= rs("titel") %></a></span> </td>
    <td width="70%" align="right">Foregår den: <b><%= rs("dato") %></b></td>
</tr>
    <tr>
<td valign="top"><img alt="Tag med til <%= rs("titel") %> den <%= rs("dato") %>" height=100 width=150 src=images/<%= rs("pic") %>></td>   
    <td><%= rs("desc") %></td>
</tr>
<tr>
<td colspan=2 align="right"><input class="button" onClick="parent.location='default.asp?site=tilmelding.asp&turID=<%= turID %>'" type="Submit" value="Tilmeld"></td>
</tr>
<%
rs.MoveNext
LOOP
RS.Close
conn.Close
Set conn = nothing
Set RS = nothing
%>

-----------------------------------------------


Tilmelding.asp (dropdown delen)
------------------------------

<% turID = Request.QueryString("turID") %>

<select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option value="<%= rs("id") %>"
        <% 
            '¨Hvis ID'et i denne er lig med id'et overført fra foregående side, skal der udskrives "SELECTED" i option tagget
            If turID = rs("id") Then
                Response.write("Selected")
            End If
        %> >
        <%= rs("titel") %></option>
<%
rs.MoveNext
LOOP
RS.Close
%></select>
Avatar billede KingMedia Novice
03. april 2004 - 15:12 #21
jeg har i dine links på forsiden tilføjet

&turID=<%= turID %>    så man ved klik på linket får overført id'et i querystring'en

/Mads
Avatar billede jones279 Nybegynder
03. april 2004 - 15:37 #22
Den udskriver ikke den der selected :/ Men den hiver ID'et med over i urlen nu!
Avatar billede KingMedia Novice
03. april 2004 - 15:39 #23
tester du det lokalt, eller uploader du ? .. 

så jeg ku se en evt url ? :)

/Mads
Avatar billede jones279 Nybegynder
03. april 2004 - 15:40 #24
Jeg tester lokalt desværre :( Har ikk noget sted der har access endnu... sorry!
Avatar billede KingMedia Novice
03. april 2004 - 15:41 #25
Hmmm..    kunne du prøve at smide databasen til mig, og de to filer, så kan jeg kigge på det ? .. 

så kan jeg uploade det til et af mine hoteller og der kan vi teste :)

/Mads
Avatar billede jones279 Nybegynder
03. april 2004 - 15:41 #26
<td colspan="2">
     
<% ID = Request.QueryString("turID") %>

<select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option value="<%= rs("id") %>"
        <% 
            '¨Hvis ID'et i denne er lig med id'et overført fra foregående side, skal der udskrives "SELECTED" i option tagget
            If turID = rs("id") Then
                Response.write("Selected")
            End If
        %> >
        <%= rs("titel") %></option>
<%
rs.MoveNext
LOOP
RS.Close
%></select></td>

Sådan her ser det ud pt på min tilmeldingsside...
Avatar billede KingMedia Novice
03. april 2004 - 15:43 #27
jamen ..  det giver jo sig selv så ;o)

Øverst har du ændret den linie som jeg skrev.. du har ID stående, jeg skrev den variabel som turID, og når du associerer den til ID, så er det klart den intet finder i turID :o)

copy paste det her ind og test igen ..

<td colspan="2">
     
<% turID = Request.QueryString("turID") %>

<select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option value="<%= rs("id") %>"
        <% 
            '¨Hvis ID'et i denne er lig med id'et overført fra foregående side, skal der udskrives "SELECTED" i option tagget
            If turID = rs("id") Then
                Response.write("Selected")
            End If
        %> >
        <%= rs("titel") %></option>
<%
rs.MoveNext
LOOP
RS.Close
%></select></td>
Avatar billede jones279 Nybegynder
03. april 2004 - 15:44 #28
Okay! Er du på ICQ?
Avatar billede KingMedia Novice
03. april 2004 - 15:48 #29
nope.. msn ..    men der har du fundet mig.. hehe
Avatar billede jones279 Nybegynder
03. april 2004 - 15:55 #30
<% turID = Request.QueryString("turID") %>

<select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option value="<%= rs("id") %>"
        <% 
            '¨Hvis ID'et i denne er lig med id'et overført fra foregående side, skal der udskrives "SELECTED" i option tagget
            If turID = rs("id") Then
                Response.write("Selected")
            End If
        %> >
        <%= rs("titel") %></option>
<%
rs.MoveNext
LOOP
RS.Close
%></select>
Avatar billede KingMedia Novice
08. april 2004 - 13:20 #31
Har ændret en del...

i bund og grund kaldet af iframe / ilayer..

default.asp
---------------------

<%
If Len(Request.QueryString("site")) < 3 then
    str_site = "forside.asp"
Elseif Request.QueryString("turID") <> "" Then
    str_site = Request.QueryString("site") & "?turID=" & Request.QueryString("turID")
Else
    str_site = Request.QueryString("site")
End if
%>

gør at den tjekker turID, og overfører dette til iframe ilayers src="" tag



tilmelding.asp
---------------------
<% turID = Trim(Request.QueryString("turID")) %>

<select name="tilmeldtid">
        <option value="0">Vælg Tur:</option>
        <%
SQL = "SELECT * FROM arrangementer ORDER BY ID desc;"
Set rs = conn.Execute(SQL)

  DO WHILE NOT rs.EOF
%>
        <option value="<%= rs("id") %>"
        <% 
            '¨Hvis ID'et i denne er lig med id'et overført fra foregående side, skal der udskrives "SELECTED" i option tagget
            If turID = Trim(rs("id")) Then
                Response.write("Selected")
            End If
        %> >
        <%= rs("titel") %></option>
<%
rs.MoveNext
LOOP
RS.Close
%></select>


Har trimmet turID variablen og rs("id") så mellemrum fjernes..


har smidt det op her..

http://kingmedia.dk/eksperten/asp/485330/

/Mads
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