Avatar billede hojben Novice
15. januar 2002 - 15:45 Der er 45 kommentarer og
1 løsning

få en xtra dropdown

Jeg har denne menu (dropdown) som ved tryk på fx bornholm åbner bornholm.asp i mainframe..

<select name=menu onChange=\"if (this.options[this.selectedIndex].value != \'\') { top.main.location.href = this.options[this.selectedIndex].value; };\">
            <option>Vælg dit amt
            <option>-------------
            <option value=kbh.asp>K&oslash;benhavn</option>
            <option value=aarhus.asp>Århus Amt</option>
            <option value=bornholm.asp>Bornholm</option>
</select>

*indhold af bornholm.asp*
<table width=\"100%\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" bordercolor=\"#FFFFFF\">
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \"
DSN = DSN & \"DBQ=\" & Server.MapPath(\"/minedata.mdb\")
Conn.Open DSN

\' SQL forespørgsel
strSQL = \"Select * from firma WHERE amt=\'Bornholm\'\"
\' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)
\' Gennemløb Recordset (rs) med en løkke
Do While Not rs.EOF
  \' Udskriv værdien af kolonnen
notatfelt = rs(\"www\")
Response.write(\"<tr><td>\")
Response.write(rs(\"firma\") & \"</td><td>\")
If Lcase(left(notatfelt, 7)) <> \"http://\" Then
  Response.write(\"<a href=\"\"http://\" & notatfelt & \"\"\">\" & rs(\"www\") & \"</a>\")
Else
  Response.write(\"<a href=\"\"\" & notatfelt & \"\"\">\" & notatfelt & \"</a>\")
End if
Response.write(\"</td></tr>\")
\'Response.write(\"<tr><td>\")
\'Response.write(rs(\"firma\") & \"</td><td>\")
\'If Lcase(left(rs(\"www\"), 7)) <> \"http://\" Then
\' Response.write(\"<a href=\"\"http://\" & rs(\"www\") & \"\"\">\" & rs(\"www\") & \"</a>\")
\'Else
\' Response.write(\"<a href=\"\"\" & rs(\"www\") & \"\"\">\" & rs(\"www\") & \"</a>\")
\'End if
\'Response.write(\"</td></tr>\")
    \'Response.Write \"<tr><td>\" & rs(\"firma\") & \"</td><td><a href=\'\" & rs(\"www\") & \"\'>\" & rs(\"www\") & \"</a></td>\"
  \' Gå til næste Record i rs
  rs.MoveNext
Loop
\' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>
</table>

Det virker også fint nok, men jeg ville godt have haft det sådan at man udfra valget *bornholm* fik endnu en dropdownmenu med de byer som nu en gang er på bornholm.. Jeg kan se at det er lidt af et arbejde men det må da kunne gøres..

mere info??
Avatar billede cool_casper Nybegynder
15. januar 2002 - 15:50 #1
Du kan bruge den her:




<HEAD>

<SCRIPT LANGUAGE=\"JavaScript\">

team = new Array(
new Array(
new Array(\"Saku Koivu\", 39482304),
new Array(\"Martin Rucinsky\", 34802389),
new Array(\"Jeff Hackett\", 39823498),
new Array(\"Sheldon Sourray\", 87587343),
new Array(\"Richard Zednik\", 68798735),
new Array(\"Brian Savage\", 98098509),
new Array(\"Stephane Robidas\", 49490583),
new Array(\"Patrice Brisebois\", 32898334),
new Array(\"Oleg Petrov\", 92340934),
new Array(\"Chad Kilger\", 34923409),
new Array(\"Benoit Brunet\", 59384093),
new Array(\"Jan Bulis\", 83948023),
new Array(\"Patrick Traverse\", 41239812),
new Array(\"Jose Theodore\", 98402398),
new Array(\"Craig Darby\", 82393434),
new Array(\"Patric Poulin\", 34290348),
new Array(\"Karl Dykhuis\", 89092834)
),
new Array(
new Array(\"Mario Lemieux\", 23840238),
new Array(\"Jaromir Jagr\", 92390484),
new Array(\"Robert Lang\", 29048203),
new Array(\"Alexei Kovalev\", 94098230),
new Array(\"Jean-Sebastien Aubin\", 39234923),
new Array(\"Kevin Stevens\", 29345423)
),
null,
new Array(
new Array(\"Alexei Yashin\", 20394802),
new Array(\"Daniel Alfredson\", 34982039),
new Array(\"Marian Hossa\", 92348902),
new Array(\"Patrick Lalime\", 98203894),
new Array(\"Radek Bonk\", 98234902)
)
);
function fillSelectFromArray(selectCtrl, itemArray, goodPrompt, badPrompt, defaultItem) {
var i, j;
var prompt;
// empty existing items
for (i = selectCtrl.options.length; i >= 0; i--) {
selectCtrl.options[i] = null;
}
prompt = (itemArray != null) ? goodPrompt : badPrompt;
if (prompt == null) {
j = 0;
}
else {
selectCtrl.options[0] = new Option(prompt);
j = 1;
}
if (itemArray != null) {
// add new items
for (i = 0; i < itemArray.length; i++) {
selectCtrl.options[j] = new Option(itemArray[i][0]);
if (itemArray[i][1] != null) {
selectCtrl.options[j].value = itemArray[i][1];
}
j++;
}
// select first item (prompt) for sub list
selectCtrl.options[0].selected = true;
  }
}
//  End -->
</script>

</HEAD>



<BODY>

<FORM NAME=\"main\">
<SELECT NAME=\"Make\" onChange=\"fillSelectFromArray(this.form.Team, ((this.selectedIndex == -1) ? null : team[this.selectedIndex-1]));\">
<OPTION VALUE=\"-1\">Select Team
<OPTION VALUE=1>Montreal Canadiens
<OPTION VALUE=2>Pittsburg Penguins
<OPTION VALUE=3>Toronto Maple Leafs
<OPTION VALUE=4>Ottawa Senators
</SELECT>
<BR>
<SELECT NAME=\"Team\" SIZE=\"5\">
<OPTION>                                  </OPTION>
<OPTION>                                  </OPTION>
<OPTION>                                  </OPTION>
<OPTION>                                  </OPTION>
<OPTION>                                  </OPTION>
</SELECT>
</FORM>


Du kan vel selv rette i den mht. byerne på Bornholm!! :-)
Avatar billede hojben Novice
15. januar 2002 - 15:56 #2
ved valg af \"team\" og \"klub\"... hvordan kan jeg så referere til dem mod databasen ?
Avatar billede cool_casper Nybegynder
15. januar 2002 - 15:58 #3
Nar, brug noget ASP til at lave nogle children og sådan....
Avatar billede hojben Novice
15. januar 2002 - 16:00 #4
cool... Jeg stiller et spørgsmål fordi jeg ikke fatter det,... buzz off hvis du forventer at alle fatter hvad du skriver...

Jeg går videre uden brug af dit svar... respekter det fremover..
Avatar billede thaman65 Nybegynder
15. januar 2002 - 16:13 #5
Helt nøjagtig hvad mener du med at referere til dem mod databasen. Skal de hente info i databasen eller hvad?
Avatar billede hojben Novice
15. januar 2002 - 16:19 #6
jepz.. vil ha det sådan at man først vælger amt og får en ny dropdown hvor man kan vælge by ud fra det amt. ved tryk på by skal en side åbnes i mainframe ud fra resultatet amt+by. data hentes så fra database..
Avatar billede cool_casper Nybegynder
15. januar 2002 - 16:30 #7
Det er vel bare noget med at databasen skal se sådan ud:

database.mdb:
id......Name..........................ParentID
1      Bornholm                      0
2      Sjælland                      0
3      Jylland                      0
4      Rønne                        1
5      AndenbypåBornholm            1
6      København                    2
7      Hillerød                      2
  osv. osv...

Og så bare sige:
SELECT WHERE ParantID = 0, først og så sætte dem ind i den første dropdown... Så blander man ASP og javascript og siger i java script:
Hvis dropdown1 = id: 2 (Sjælland) så...
Hvis undermenur i på sjælland som man har hentet fra databasen ved sidens load... Hvis I forstår?!?
Avatar billede hojben Novice
15. januar 2002 - 16:41 #8
For en rookie i asp er det ikke forståeligt..

<snip>Jeg går videre uden brug af dit svar... respekter det fremover.. </snip>
Avatar billede cool_casper Nybegynder
15. januar 2002 - 16:43 #9
OK!, man er nok sur hvad\'?!? hvad betyder snip?!
Avatar billede cool_casper Nybegynder
15. januar 2002 - 16:45 #10
Og desuden kunne det jo godt være at du kunne forstå det jeg skrev (vilket du åbenbart ikke kan!) og du så kunne bruge svaret!!
Det lyder heller ikke ligefrem som om at du overhovedet ønsker hjælp.... Er det personligt eller hvad?!?!
Avatar billede hojben Novice
15. januar 2002 - 16:45 #11
at man tager en kommentar fra tidligere og refererer til den.

man skal ikke kalde mig nar og tro man slipper afsted med det...
Avatar billede ras2000 Nybegynder
15. januar 2002 - 16:45 #12
<html>
<head>
<script>
var stateNames=new Array()
stateNames[\"none\"]=new Array(\"Choose a country first\")
stateNames[\"USA\"]=new Array(\"Alabama\",\"Alaska\",\"Arizona\",\"Arkansas\",\"California\",\"Colorado\",\"Connecticut\",\"Delaware\",\"Florida\",\"Georgia\",\"Hawaii\",\"Idaho\",\"Illinois\",\"Indiana\",\"Iowa\",\"Kansas\",\"Kentucky\",\"Louisiana \",\"Maine\",\"Maryland\",\"Massachusetts\",\"Michigan\",\"Minnesota\",\"Mississippi\",\"Missouri\",\"Montana\",\"Nebraska\",\"Nevada\",\"New Hampshire\",\"New Jersey\",\"New Mexico\",\"New York\",\"North Carolina\",\"North Dakota\",\"Ohio\",\"Oklahoma \",\"Oregon\",\"Pennsylvania\",\"Rhode Island\",\"South Carolina\",\"South Dakota\",\"Tennessee\",\"Texas\",\"Utah\",\"Vermont\",\"Virginia\",\"Washington\",\"West Virginia\",\"Wisconsin\",\"Wyoming \")
stateNames[\"CAN\"]=new Array(\"Newfoundland \",\"Nova Scotia \",\"New Brunswick \",\"Prince Edward Island \",\"Quebec \",\"Ontario \",\"Manitoba \",\"Saskatchewan \",\"Alberta \",\"British Columbia \",\"Nunavut \",\"Northwest Territories \",\"Yukon Territory\")
stateNames[\"AUS\"]=new Array(\"Australian Capital Territory\",\"New South Wales\",\"Northern Territory\",\"Queensland\",\"South Australia\",\"Tasmania\",\"Victoria\",\"Western Australia\")
function fillStates(opt){
  s=document.f.states.options
  s.length=stateNames[opt].length
  for(i=0;i<s.length;i++){
    s[i].value=stateNames[opt][i]
    s[i].text=stateNames[opt][i]
  }
  document.f.states.selectedIndex=0
}
</script>
</head>
<body>
<form name=\"f\">
<select name=countries onchange=\"fillStates(this.options[this.selectedIndex].value)\">
  <option value=\"none\">Pick one</option>
  <option value=\"USA\">United States</option>
  <option value=\"CAN\">Canada</option>
  <option value=\"AUS\">Australia</option>
</select>
<select name=states>
  <option>Choose a country first</option>
  <option></option>
  <option></option>
  <option></option>
  <option></option>
</select>
</form>
</body>
</html>
Giver en dynamisk dropdown udfra et valg. De lange lister med navne kan laves med asp, men for at jeg skal kunne forklare hvordan du gør det, er jeg nød til at vide hvordan du henter informationen ud af databasen.
Avatar billede hojben Novice
15. januar 2002 - 16:48 #13
det står i mit spørgsmål.. der henter jeg bare ikke byen...
Avatar billede cool_casper Nybegynder
15. januar 2002 - 16:50 #14
hojben  >> Referer til den?!?!?

Det var jo ikke fordi jeg udelukkende kaldte dig en nar, det var bare sådan starten på en sætning!! Eks.:
Dig og en af dine snakker sammen en fredag:
Din Ven: \"Nå vi ses vel, imorgen på arbejdet!\"
Så siger du: \"Nar, Peter.. Det er fredag!\"
\"Nååå, ja!\"

Kan du se sammenhængen!?!?
Avatar billede hojben Novice
15. januar 2002 - 16:50 #15
det er præcist sådan at jeg vil ha den...
Avatar billede hojben Novice
15. januar 2002 - 16:51 #16
udelukkende... i min alder kalder man sq ikke hinanden for nar...
Avatar billede ras2000 Nybegynder
15. januar 2002 - 16:53 #17
Jeg tror i sammenhængen betyder nar narjh eller narøh, eller sårn.
Avatar billede cool_casper Nybegynder
15. januar 2002 - 16:54 #18
Nåå, men det gør man altså i min alder... Synd for dig hvis du misforstod det!!

NU, MÅ DU ALTSÅ STOPPE!!!! Hvordan kan det være at ras2000\'s svar er mere rigtig en mit!!! Det er jo det samme....!!!!!
Avatar billede ras2000 Nybegynder
15. januar 2002 - 16:59 #19
Nu er det lidt svært for mig at prøve koden af, men kunne du ikke åbne et nyt recordset med amterne i:
strSQL = \"select amt from firma order by amt\"
Set rs1 = Conn.Execute(strSQL)
strSQL = \"select amt, by from firma order by amt\"
Set rs2 = Conn.Execute(strSQL)
a = 0
For each item in rs1
a = a + 1
do while not rs2.eof
%>
str<%a%> = str + \'<%rs2(1)%>, \';
<%
rs2.movenext
loop
next
%>
Avatar billede ras2000 Nybegynder
15. januar 2002 - 17:01 #20
Så får du en masse strenge der hedder str1, str2, ... osv for hvert amt. dem kan du sætte ind i dit array.
Avatar billede hojben Novice
15. januar 2002 - 17:11 #21
Får følgende fejl:

Microsoft VBScript runtime error \'800a01b6\'
Object doesn\'t support this property or method

/temp.asp, line 21
Hvor linje 21 refererer til For each item in rs1

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
<link rel=\"stylesheet\" href=\"/css/general.css\">
</head>
<body bgcolor=\"#003366\" text=\"#FFFFFF\" link=\"#FFFFFF\" vlink=\"#FFFFFF\" alink=\"#FFFFFF\">
Temp<br>
<table width=\"100%\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" bordercolor=\"#FFFFFF\">
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \"
DSN = DSN & \"DBQ=\" & Server.MapPath(\"/minedata.mdb\")
Conn.Open DSN
\' SQL forespørgsel
strSQL = \"select amt from firma order by amt\"
Set rs1 = Conn.Execute(strSQL)
strSQL = \"select amt, by from firma order by amt\"
Set rs2 = Conn.Execute(strSQL)
a = 0
For each item in rs1
a = a + 1
do while not rs2.eof
%>
str<%a%> = str + \'<%rs2(1)%>, \';
<%
rs2.movenext
loop
next
\' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>

</table>
</body>
</html>
Avatar billede hojben Novice
15. januar 2002 - 17:39 #22
ras2000 > kan du hjælpe?
Avatar billede ras2000 Nybegynder
16. januar 2002 - 10:03 #23
Prøv det her:
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
<link rel=\"stylesheet\" href=\"/css/general.css\">
</head>
<body bgcolor=\"#003366\" text=\"#FFFFFF\" link=\"#FFFFFF\" vlink=\"#FFFFFF\" alink=\"#FFFFFF\">
Temp<br>
<table width=\"100%\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" bordercolor=\"#FFFFFF\">
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \"
DSN = DSN & \"DBQ=\" & Server.MapPath(\"/minedata.mdb\")
Conn.Open DSN
\' SQL forespørgsel
strSQL = \"select amt from firma order by amt\"
Set rs1 = Conn.Execute(strSQL)
strSQL = \"select amt, by from firma order by amt\"
Set rs2 = Conn.Execute(strSQL)
a = 0
Do while not rs1.eof
a = a + 1
do while not rs2.eof
%>
str<%a%> = str + \'<%rs2(1)%>, \';
<%
rs2.movenext
loop
loop
\' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>

</table>
</body>
</html>   

Avatar billede hojben Novice
16. januar 2002 - 10:07 #24
str
Microsoft VBScript runtime error \'800a000d\'

Type mismatch: \'a\'

/temp.asp, line 25
Avatar billede ras2000 Nybegynder
16. januar 2002 - 10:26 #25
Prøv at skifte denne linie
str<%a%> = str + \'<%rs2(1)%>,
ud med
str<%=a%> = str + \'<%=rs2(1)%>
Avatar billede hojben Novice
16. januar 2002 - 10:30 #26
str1 = str + \'Århus \'str
Microsoft VBScript runtime error \'800a000d\'

Type mismatch: \'a\'

/temp.asp, line 16

Det hjalp da lidt ;)
Avatar billede hojben Novice
16. januar 2002 - 10:32 #27
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \"
DSN = DSN & \"DBQ=\" & Server.MapPath(\"/data/stemmer.mdb\")
Conn.Open DSN
strSQL = \"select amt from firma order by amt\"
Set rs1 = Conn.Execute(strSQL)
strSQL = \"select amt, by from firma order by amt\"
Set rs2 = Conn.Execute(strSQL)
a = 0
Do while not rs1.eof
a = a + 1
do while not rs2.eof
%>
str<%=a%> = str + \'<%=rs2(1)%>
\'str<%a%> = str + \'<%rs2(1)%>, \';
<%
rs2.movenext
loop
loop
Conn.Close
Set Conn = Nothing
%>

Den ser sådan ud nu
Avatar billede ras2000 Nybegynder
16. januar 2002 - 10:34 #28
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \"
DSN = DSN & \"DBQ=\" & Server.MapPath(\"/data/stemmer.mdb\")
Conn.Open DSN
strSQL = \"select amt from firma order by amt\"
Set rs1 = Conn.Execute(strSQL)
strSQL = \"select amt, by from firma order by amt\"
Set rs2 = Conn.Execute(strSQL)
a = 0
Do while not rs1.eof
a = a + 1
do while not rs2.eof
%>
str<%=a%> = str + \'<%=rs2(1)%>\';
<%
rs2.movenext
loop
loop
Conn.Close
Set Conn = Nothing
%>
Prøv sådan.
Avatar billede hojben Novice
16. januar 2002 - 10:40 #29
længere end før..

str1 = str + \'Århus\'; str1 = str + \'Hillerød\'; str1 = str + \'Hillerød\'; str1 = str + \'Hørsholm\'; str1 = str + \'Valby\'; str1 = str + \'København Ø\'; str1 = str + \'Vejle\';
Active Server Pages error \'ASP 0113\'

Script timed out

/temp.asp

The maximum amount of time for a script to execute was exceeded. You can change this limit by specifying a new value for the property Server.ScriptTimeout or by changing the value in the IIS administration tools.
Avatar billede ras2000 Nybegynder
16. januar 2002 - 10:52 #30
Prøv at sende mig databasen på rasmus.bak.jepsen@teknologisk.dk, så prøver jeg at kigge på det.
Avatar billede hojben Novice
16. januar 2002 - 10:54 #31
er sendt
Avatar billede ras2000 Nybegynder
16. januar 2002 - 12:19 #32
<html>

<head>
<title>side 1</title>
<script type=\"text/javascript\">
str = \"\";
var bynavne=new Array()
bynavne[\"ingen\"]=new Array(\"vælg et amt først\");
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"../databaser/stemmer.mdb\")
set rs = Server.CreateObject(\"ADODB.Recordset\")
set rs1 = Server.CreateObject(\"ADODB.Recordset\")
sql = \"SELECT amt, by FROM firma ORDER BY amt \"
rs.Open sql, Conn, 3, 3
sql1 = \"SELECT amt FROM firma GROUP BY amt\"
rs1.Open sql1, Conn, 3, 3
a = 0
do while not rs1.eof
    a = a + 1
    rs1.movenext%>
str<%=a-1%> = \"\";
<%
loop
a = 0
test = \"\"
do while not rs.eof
    if test <> rs(0) then
        a = a + 1
%>
bynavne[\"<%=rs(0)%>\"]=new Array();
<%
    end if%>
bynavne[\"<%=rs(0)%>\"][bynavne[\"<%=rs(0)%>\"].length] = \"<%=rs(1)%>\";
<%
    test = rs(0)
    rs.movenext
loop
%>
function fillStates(opt){
  s=document.f.states.options
  s.length=bynavne[opt].length
  for(i=0;i<s.length;i++){
    s[i].value=bynavne[opt][i]
    s[i].text=bynavne[opt][i]
  }
  document.f.states.selectedIndex=0
}

</script>
</head>
<body>
<form name=\"f\">
<select name=countries onchange=\"fillStates(this.options[this.selectedIndex].value)\">
  <option value=\"ingen\">ingen</option>
<%
rs1.movefirst
do while not rs1.eof%>
  <option value=\"<%=rs1(0)%>\"><%=rs1(0)%></option>
<%
    rs1.movenext
loop
%>
</select>
<select name=states>
  <option>vælg et amt først</option>
  <option></option>
  <option></option>
  <option></option>
  <option></option>
</select>
</form>

</body>

</html>
Der er nogle problemer, under frederiksborg skriver den hillerød to gange, der er to poster i databasen. Jeg har lavet en dsnløs forbindelse, der kan du bare bruge den sædvanlige måde, hvis du hellere vil, det er i linierne:
Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"../databaser/stemmer.mdb\")
set rs = Server.CreateObject(\"ADODB.Recordset\")
Avatar billede hojben Novice
16. januar 2002 - 12:32 #33
Fiiiino... hvordan får jeg så de 2 valg til at åbne den anden aspfil som nævnt i sp. ?
Avatar billede ras2000 Nybegynder
16. januar 2002 - 12:55 #34
Lav din form om til:
<form name=\"f\" action=\"amt.asp\">
<select name=countries onchange=\"fillStates(this.options[this.selectedIndex].value)\">
  <option value=\"ingen\">ingen</option>
<%
rs1.movefirst
do while not rs1.eof%>
  <option value=\"<%=rs1(0)%>\"><%=rs1(0)%></option>
<%
    rs1.movenext
loop
%>
</select>
<select name=states>
  <option>vælg et amt først</option>
  <option></option>
  <option></option>
  <option></option>
  <option></option>
</select>
<input type=\"submit\" value=\"ok\">
</form>

I stedet for at have en side for hvert amt, skal du så have en side der hedder amt.asp, eller hvad du nu vil kalde den. I den side kan du trække amt og by ud af request.querystring. Din sql sætning vil så se ud lidt ala
strSQL = \"Select * from firma WHERE amt=\"&Request.querystring(\"countries\")&\" AND WHERE by=\"&Request.querystring(\"states\")
Du kan også omdøbe dine selects, så de er lidt mere sigende, countries/amt, states/by.
Avatar billede ras2000 Nybegynder
16. januar 2002 - 13:02 #35
Du kan undgå at den skriver bynavnene to gange ved at lave sql sætningen
sql = \"SELECT amt, by FROM firma ORDER BY amt \"
om til:
sql = \"SELECT amt, by FROM firma GROUP BY amt, by ORDER BY amt \"
Avatar billede hojben Novice
16. januar 2002 - 13:18 #36
Lækkert... nu er der så bare denne fejl

Microsoft OLE DB Provider for ODBC Drivers error \'80040e14\'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression \'amt=Frederiksborg AND WHERE by=Hillerød\'.

/resultat.asp, line 22

har ændret til resultat.asp og den indeholder nu:

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
<link rel=\"stylesheet\" href=\"/css/general.css\">
</head>

<body bgcolor=\"#003366\" text=\"#FFFFFF\" link=\"#FFFFFF\" vlink=\"#FFFFFF\" alink=\"#FFFFFF\">
klaverstemmere<br>
<table width=\"100%\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" bordercolor=\"#FFFFFF\">
<%
Set Conn = Server.CreateObject(\"ADODB.Connection\")
DSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; \"
DSN = DSN & \"DBQ=\" & Server.MapPath(\"/data/stemmer.mdb\")
Conn.Open DSN

\' SQL forespørgsel
strSQL = \"Select * from firma WHERE amt=\"&Request.querystring(\"countries\")&\" AND WHERE by=\"&Request.querystring(\"states\")
\' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)
\' Gennemløb Recordset (rs) med en løkke
Do While Not rs.EOF
  \' Udskriv værdien af kolonnen IP ???
notatfelt = rs(\"www\")
Response.write(\"<tr><td>\")
Response.write(rs(\"firma\") & \"</td><td>\")
If Lcase(left(notatfelt, 7)) <> \"http://\" Then
  Response.write(\"<a href=\"\"http://\" & notatfelt & \"\"\">\" & rs(\"www\") & \"</a>\")
Else
  Response.write(\"<a href=\"\"\" & notatfelt & \"\"\">\" & notatfelt & \"</a>\")
End if
Response.write(\"</td></tr>\")
\'Response.write(\"<tr><td>\")
\'Response.write(rs(\"firma\") & \"</td><td>\")
\'If Lcase(left(rs(\"www\"), 7)) <> \"http://\" Then
\' Response.write(\"<a href=\"\"http://\" & rs(\"www\") & \"\"\">\" & rs(\"www\") & \"</a>\")
\'Else
\' Response.write(\"<a href=\"\"\" & rs(\"www\") & \"\"\">\" & rs(\"www\") & \"</a>\")
\'End if
\'Response.write(\"</td></tr>\")
    \'Response.Write \"<tr><td>\" & rs(\"firma\") & \"</td><td><a href=\'\" & rs(\"www\") & \"\'>\" & rs(\"www\") & \"</a></td>\"
  \' Gå til næste Record i rs
  rs.MoveNext
Loop
\' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing
%>

</table>
</body>
</html>
Avatar billede ras2000 Nybegynder
16. januar 2002 - 13:22 #37
Prøv denne i stedet.
strSQL = \"Select * from firma WHERE amt=\'\"&Request.querystring(\"countries\")&\"\' AND by=\'\"&Request.querystring(\"states\")&\"\'\"
Avatar billede hojben Novice
16. januar 2002 - 13:28 #38
Yeaaaaaah.... så mangler jeg kun at den skal åbne resultat.asp i den frame som hedder \"main\"

;)
Avatar billede ras2000 Nybegynder
16. januar 2002 - 13:32 #39
Hvornår? Når den loader?
Så skal du sætte dette ind i <body>
<body onload=\"parent.main.document.location.href=\'resultater.asp\'\">
Avatar billede hojben Novice
16. januar 2002 - 13:33 #40
nej når man trykker på \"OK\"
Avatar billede ras2000 Nybegynder
16. januar 2002 - 13:36 #41
hm, det kan jeg ikke lige overskue. Er siden lagt ud? har du et link?
Avatar billede hojben Novice
16. januar 2002 - 13:37 #42
ja men smider det lige i en mail :)
Avatar billede ras2000 Nybegynder
16. januar 2002 - 14:07 #43
Du skal lave dit form tag om, sådan her:
<FORM action=resultat.asp name=f target=main>
Avatar billede hojben Novice
16. januar 2002 - 14:11 #44
Jeg kan ikke andet end at takke dig !!!! har smidt lidt ekstra til dig ;)
Avatar billede ras2000 Nybegynder
16. januar 2002 - 14:14 #45
Takker!
Avatar billede hojben Novice
05. marts 2002 - 15:55 #46
ras2000 > kan du hjælpe igen ???

http://www.eksperten.dk/spm/180996
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