Avatar billede felixcat Nybegynder
29. januar 2004 - 10:21 Der er 13 kommentarer og
1 løsning

Dropdown og database

Hej
Jeg har to tabeller i en accessdatabase
den ene indeholder postnr og byer. Den anden indeholder skoler. De er "forbundet" i postnr. (relation)
På min side har jeg to dropdown.

1. Hvordan får jeg dropdown 1 til at hente alle postnumre fra tabel med postnr og by. (jeg kan ikke få det til at virke - det er som om der er en syntaksfejl)

2. det man vælger i dropdown 1 har betydning for resultatet i dropdown 2. dvs vælger jeg postnr. 4000 i dropdown 1 så skal den i dropdown 2 liste alle de skoler som har postnr. 4000 i sin adresse.
Hvordan gøres det ?

3. Senere skal man indtaste navn og adresse og by osv på sif selv og hele baduljen skal gemmes i en tabel. Hvordan gøres det.

Det skal laves i asp/vbscript selvom det måske godt kan laves i javascript

Her er et uddrag af min kode



<tr>
<td width="20%" valign="top">Vælg Postnr</td>
<td colspan="2"><select name="postcity" size="1">
<% do while not rsitem.eof %>
<option value="<%=rsItem("postnr")%>"><% If rsItem("postnr") = Request("postnr") Then Response.Write "selected" End if%><%=rsItem("postnr")%></option>
<%rsItem.moveNext
Loop
Response.Write "</select>"
rsItem.Close %></td>
</tr>
<tr>
<td colspan="3" valign="top">&nbsp;</td>
</tr>
<tr>
<td colspan="3" valign="top">&nbsp;</td>
</tr>
<tr>
<td width="20%" valign="top">Vælg skole</td>
<td colspan="2"><select name="select" size="1">
<option>Abild Skole,Ribe Landevej 62,6270,T&oslash;nder</option>
<option>Abild Skole,Ribe Landevej 62,6270,T&oslash;nder</option>
<option>Abild Skole,Ribe Landevej 62,6270,T&oslash;nder</option>
<option>Abild Skole,Ribe Landevej 62,6270,T&oslash;nder</option>
<option>Abild Skole,Ribe Landevej 62,6270,T&oslash;nder</option>
<option>Abild Skole,Ribe Landevej 62,6270,T&oslash;nder</option>
<option>Abild Skole,Ribe Landevej 62,6270,T&oslash;nder</option>
</select></td>
</tr>

på forhånd tak
Avatar billede nute Nybegynder
29. januar 2004 - 10:39 #1
1) "jeg kan ikke få det til at virke - det er som om der er en syntaksfejl" - hvordan virker det ikke ? bliver det vist en fejlmeddelelse ?

3) hvis du ikke ved hvordan du lægger data ind i en database, kan du kigge her:

http://html.dk/tutorials/asp/lektion20.asp

/nute
Avatar billede felixcat Nybegynder
29. januar 2004 - 11:04 #2
1) der kommer ingen fejl men hvis man kører en validator på den (dreamweaver) viser den en fejl i html. Men postnr kommer frem
Avatar billede nute Nybegynder
29. januar 2004 - 11:24 #3
oki, nu kender jeg ikke DreamWeaver ... jeg stoler ikke på at en program kan mere end mig ;-)

Men det ser også ud til at du måske prøver at skrive ud "selected" på det forkerte sted. Prøv at lave din loop sådan her:

<%
do while not rsitem.eof
selected = ""
If rsItem("postnr") = Request("postnr") Then
    selected = "selected=""selected"""
End if
%>
<option value="<%=rsItem("postnr")%><%= selected %>><%=rsItem("postnr")%></option>
<%
rsItem.moveNext
Loop
Avatar billede felixcat Nybegynder
29. januar 2004 - 15:13 #4
ok det virker nu - tak for det - men kan du/i komme med noget kode for de andre spørgsmål
på forhånd tak
Avatar billede nute Nybegynder
30. januar 2004 - 12:26 #5
hmmm ... der er umiddelbart to måder at løse dette på. den ene måde er at last alle skoler ved load af siden og bruge noget javascript for at ændre indholdet i din "skole"dropdown. en anden måde er at laste skoler for et specifikt postnummer hver gang man vælger et postnummer. hvor mange skoler er der snak om totalt ?

/nute
Avatar billede felixcat Nybegynder
30. januar 2004 - 12:36 #6
det er 1600 skoler og det er nok ikke let at sætte ind i et javascript
Avatar billede nute Nybegynder
30. januar 2004 - 13:00 #7
det er nok nemt nok at sætte dem ind med javascript... ingen problemer. men du kan jo prøve noget ála dette:

<tr>
<td width="20%" valign="top">Vælg Postnr</td>
<td colspan="2">
<select name="postcity" size="1">
<%
do while not rsitem.eof
selected = ""
If rsItem("postnr") = Request("postnr") Then
    selected = "selected=""selected"""
End if
%>
<option value="<%=rsItem("postnr")%>"<%= selected %>><%=rsItem("postnr")%></option>
<%
rsItem.moveNext
Loop
rsItem.Close
%>
</select>
</td>
</tr>
<tr>
<td colspan="3" valign="top">&nbsp;</td>
</tr>
<tr>
<td colspan="3" valign="top">&nbsp;</td>
</tr>
<tr>
<td width="20%" valign="top">
Vælg skole</td>
<td colspan="2"><select name="select" size="1">
<%
if( Request("postnr") <> "" ) then
  SQL = "SELECT * FROM [tabel med skoler] WHERE [postnummer] = " & Request("postnr")
  rsSkoler = conn.execute( SQL )
  while not rsSkoler.EOF
      Response.Write "<option value=""" & rsSkoler("[skoleid]") & """>" & rsSkoler("skolenavn") & "</option>"
    rsSkoler.moveNext
  wend
end if
%>
</select></td>
</tr>

/nute
Avatar billede felixcat Nybegynder
31. januar 2004 - 21:39 #8
Hej Nute
Jeg har selv fundet ud af det - noget a la dit - jeg vil gerne tildele dig point for dine anstrengelser - hvordan gør jeg det ?
Avatar billede nute Nybegynder
31. januar 2004 - 22:09 #9
du kan give mig points nu, når jeg har svaret :-)

men post et svar selv og snup minimum 150 points selv. jeg har ikke lyst til at få 200 points for dette

:-)
Avatar billede felixcat Nybegynder
02. februar 2004 - 15:43 #10
det gør jeg så
Avatar billede nute Nybegynder
02. februar 2004 - 15:45 #11
fino :-)
Avatar billede nute Nybegynder
02. februar 2004 - 15:46 #12
hmm. .. så snuppet du alle points selv :-/ ... det er lige meget...
Avatar billede felixcat Nybegynder
02. februar 2004 - 15:46 #13
f... nu fik jeg tildelt mig selv alle points - kan det ændres ?
Avatar billede nute Nybegynder
02. februar 2004 - 16:00 #14
du kan oprette et nyt spm i samme kategori med overskriften "points til [bruger]" og kopiere URL'en til dette spm ind i spørgsmålsfeltet.

;-)
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