16. februar 2005 - 09:55Der er
4 kommentarer og 1 løsning
Hentning fra database generer mig - forslag?
Hej alle eksperter,
Der er 5 sprog i databasen. feks Sverige, Sweden, Schweden, Danmark, Danmark, Dänemark osv.
Dette er den anden del av Request.QueryStringen <Else>. Variabel er sat til CountryId (45,46,47,49,358).
På linie 7-10 henter jeg "Country" der hvor CountryId = CountryId. Dette for at hente korrekt sprog fra databasen. Den er også god nok men på linie 10 skriver jeg ud linket og det resulterer så i at alle resultater er detsamme fordi jeg jo har hentet WHERE countryId = CountryId (Linie 7).
Er der en haj som ved hvordan jeg kan få den at hente sprog udfra CountryId (Danmark=dansk, Sverige=svensk osv.) men stadig skrive ud linket: <option value='index.asp?CountryId=45'>Danmark</option> <option value='index.asp?CountryId=46'>Sverige</option> <option value='index.asp?CountryId=47'>Norge</option> <option value='index.asp?CountryId=49'>Tyskland</option> <option value='index.asp?CountryId=358'>Finland</option>
KODE! <!-- HVIS COUNTRY PARAMETER ER SAT, VISES ALLE ALIGEVEL --> 1 <% 2 Else 3 %> 4 5 <select name="DB1" style="width:150" onchange="linkselect this.options[this.selectedIndex].value)"> 6 <% 7 SQL = "SELECT CountryId, Country FROM DBLanguage WHERE CountryId = "& CountryId &"" 8 Set rs = Conn.Execute(SQL) 9 Do While Not rs.EOF 10 Response.Write "<option value='index.asp?CountryId="& CountryId &"'>"&rs("Country")&"</option>" 11 rs.MoveNext 12 Loop 13 %> 14 </select> 15 <% End If %>
Hvordan ser tabellen DBLanguage ud? Jeg ville mene at der skulle være min tre kolonner i tabellen, en med et sprog id, en med ordlyden, og en anden med sprogid. ex.: sprid land landid 1 Danmark 45 2 Denmark 45 1 Sverige 46 2 Sweden 46 Det er jo to forskellige ting du taler om. Hvilket sprog tingene skal vises i, og hvilket land der er tale om.
Det er lidt svært at forklare hvordan den ser ud. Det er flere tabeller med en kobbling mod. Måske har jeg også bygget databasen op forkert? Om du har lyst, så vil jeg gerne maile den til dig så at du kan kigge på og eventuelt forklare hvad jeg har gjort forkert, så du får et overblik. Selvfølgelig skal fortsat diskussion fortsætte på Eks.
Det tror jeg ikke er nødvendigt. Men du skal have to lande id'er. Et for hvilket sprog du vil vise tingene i, og et til ... index.asp?countryID= sætningen. Hvis du tager mit eksempel, så ville din sql sætning se sådan her ud: SQL = "SELECT landid, land FROM DBLanguage WHERE sprid = "& CountryId &"" og linie 10 i din kode ville se sådan her ud: 10 Response.Write "<option value='index.asp?CountryId="& landid &"'>"&rs("land")&"</option>" Så er det ligegyldigt hvad der ellers er af felter i tabellen, og hvad de er koblet sammen med.
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.