|
| URL variabler med æ, ø og å i Netscape? Fra : Helle |
Dato : 19-04-02 15:48 |
|
Hej!
Jeg har et problem på min webside, hvor der skal føres variabler
med i URL´en, som bruges til at hente oplysninger i en database,
og disse variabler indeholder æ, ø eller å.
Det fungere fint i Internet Explorer, men i Netscape dúr det
ikke.
Håber der er nogen der ved hvad man kan gøre ved det problem??
Det er bla. på siden som findes her:
www.dyrenettet.dk/Katte.asp
under katte-menuen "annoncer", der giver problemer.
(Jeg vil lige advare Netscape-brugerne: det har endnu ikke været
muligt for mig at få siden til at se ud som i IE,
så lay-outet er ikke helt som det burde være!)
Jeg vil forøvrigt gerne takke alle jer, der er kommet med rigtig
gode svar til mig her i ASP gruppen, og som har hjulpet mig til
at kunne lave siden, da jeg ikke viste noget om asp osv. da jeg
startede!
TUSIND TAK for jeres hjælp!
Håber lige at få det sidste med her!
Hilsen fra Helle
--
KONKURRENCE PÅ HTML.dk:
fortæl hvordan din drømmeeditor ser ud
og vind luksus webhoteller fra Wannafind
KLIK HER! => http://www.html.dk/editor
| |
Mogens Dyhre Hansen (19-04-2002)
| Kommentar Fra : Mogens Dyhre Hansen |
Dato : 19-04-02 16:19 |
|
"Helle" <helven@tiscali.dk> wrote in message
news:a9pano$6b1$1@sunsite.dk...
> Hej!
> Jeg har et problem på min webside, hvor der skal føres variabler
> med i URL´en, som bruges til at hente oplysninger i en database,
> og disse variabler indeholder æ, ø eller å.
Du skal bruge server.URLencode(rs("enellerandentabel")) på dit link
udtræk
--
Mogens D. Hansen
http://www.svend-bent.dk/ Nå ja noget skal den jo hedde!
| |
Jesper Stocholm (19-04-2002)
| Kommentar Fra : Jesper Stocholm |
Dato : 19-04-02 17:19 |
|
Mogens Dyhre Hansen wrote in news:3cc03499$0$226
$edfadb0f@dspool01.news.tele.dk:
>
> "Helle" <helven@tiscali.dk> wrote in message
> news:a9pano$6b1$1@sunsite.dk...
>> Hej!
>> Jeg har et problem på min webside, hvor der skal føres variabler
>> med i URL´en, som bruges til at hente oplysninger i en database,
>> og disse variabler indeholder æ, ø eller å.
>
> Du skal bruge server.URLencode(rs("enellerandentabel")) på dit link
> udtræk
>
og så er det i øvrigt ikke fordi NN ikke kan håndtere disse mærkelige
tegn i URL. De må slet ikke forekomme i URL - jvf en eller anden RFC. IE
er blot så venlig at konvertere "urigtige" tegn til de korrekte
karakter-sekvenser automatisk ... hvilket NN ikke gør.
Husk på, at man ved design af en applikation skal tage hånd om _alle_
tilfælde af opførsler hos de brugere, der skal bruge applikationen.
--
Jesper Stocholm
http://stocholm.dk
http://asp.stocholm.dk
Svar til gruppen og ikke til mig privat pr. email :|
| |
Mogens Dyhre Hansen (19-04-2002)
| Kommentar Fra : Mogens Dyhre Hansen |
Dato : 19-04-02 18:09 |
|
"Jesper Stocholm" <spam200204@stocholm.dk> wrote in message
news:Xns91F5BA55B3E56spamstocholmdk@192.38.208.81...
> og så er det i øvrigt ikke fordi NN ikke kan håndtere disse mærkelige
> tegn i URL. De må slet ikke forekomme i URL - jvf en eller anden RFC.
IE
> er blot så venlig at konvertere "urigtige" tegn til de korrekte
> karakter-sekvenser automatisk ... hvilket NN ikke gør.
Ja det er selvfølgelig rigtig. Jeg var bare på en af undersiderne hvor
der var mellemrum i linket så jeg tænkte ikke lige så langt
> Jesper Stocholm
> http://stocholm.dk
> http://asp.stocholm.dk
--
Mogens D. Hansen
http://www.svend-bent.dk/ [-_-]
| |
Helle (19-04-2002)
| Kommentar Fra : Helle |
Dato : 19-04-02 18:36 |
|
Hej Jesper og Mogens!
Hvis det vil sige at jeg ikke kan bruge den form for overførsel, hvad gør
jeg så, for det står jo på dansk(æ,ø og å) i databasen, og det skal jo være
det samme i kriteriet?
Min kode ser således ud:
<A href="Annoncerdyr.asp?kategori=
<%
Response.write Request.querystring("kategori")
%>
&type=Søger nyt hjem">
Har i andre forslag, når jeg godt vil have det til at stå på siden som det
gør?
På forhånd tak!
Hilsen Helle
--
KONKURRENCE PÅ HTML.dk:
fortæl hvordan din drømmeeditor ser ud
og vind luksus webhoteller fra Wannafind
KLIK HER! => http://www.html.dk/editor
| |
Jørn Andersen (19-04-2002)
| Kommentar Fra : Jørn Andersen |
Dato : 19-04-02 20:31 |
|
On Fri, 19 Apr 2002 17:36:29 +0000 (UTC), Helle <helven@tiscali.dk>
wrote:
>Hvis det vil sige at jeg ikke kan bruge den form for overførsel, hvad gør
>jeg så, for det står jo på dansk(æ,ø og å) i databasen, og det skal jo være
>det samme i kriteriet?
Skal det? :)
>Min kode ser således ud:
><A href="Annoncerdyr.asp?kategori=
><%
>Response.write Request.querystring("kategori")
>%>
>&type=Søger nyt hjem">
>Har i andre forslag, når jeg godt vil have det til at stå på siden som det
>gør?
Jeg ville oprette en felt mere i din kategoritabel, som du kunne kalde
"kategoriID" eller lign.
Om du vil vælge at lave det som et tal og få nogle mere "anonyme"
URL'er:
Annoncerdyr.asp?kategori=17
- eller blot omskrive kategorien til en kort udgave uden æ, ø, å:
Annoncerdyr.asp?kategori=soeghjem
- tjah, det er helt op til dig.
Good luck,
Jørn
--
Jørn Andersen,
Brønshøj
| |
Helle (20-04-2002)
| Kommentar Fra : Helle |
Dato : 20-04-02 00:25 |
|
Hej Jørn!
Det er nok fordi jeg stadig er ny i det med ASP, men hvis der nu i databasen
skal hentes en kategori, og der skulle jo gerne i annoncen stå: søger nye
hjem, hvordan kan jeg så bruge et nummer, rs("kategoriID")
det skal vel være rs("kategori") den skal hente eller hvad. Jeg kan ikke
rigtig overskue hvordan jeg får de to ting til at hænge sammen.
Skal jeg så allerede i formularen der indtastes oplysninger i skrive en masse
if´er f.eks. hvis kategori = søger nye hjem, så er kategoriID = 3 og sætte
det i databasen?
Håber du kan se hvad jeg mener med det her, da det sikkert er et tåbeligt
spørgsmål.
Håber du kan hjælpe mig.
Hilsen Helle
Jørn Andersen wrote in dk.edb.internet.webdesign.serverside.asp:
> On Fri, 19 Apr 2002 17:36:29 +0000 (UTC), Helle <helven@tiscali.dk>
> wrote:
>
> >Hvis det vil sige at jeg ikke kan bruge den form for overførsel, hvad gør
> >jeg så, for det står jo på dansk(æ,ø og å) i databasen, og det skal jo
være
> >det samme i kriteriet?
>
> Skal det? :)
>
> >Min kode ser således ud:
> ><A href="Annoncerdyr.asp?kategori=
> ><%
> >Response.write Request.querystring("kategori")
> >%>
> >&type=Søger nyt hjem">
> >Har i andre forslag, når jeg godt vil have det til at stå på siden som det
> >gør?
>
> Jeg ville oprette en felt mere i din kategoritabel, som du kunne kalde
> "kategoriID" eller lign.
> Om du vil vælge at lave det som et tal og få nogle mere "anonyme"
> URL'er:
>
> Annoncerdyr.asp?kategori=17
>
> - eller blot omskrive kategorien til en kort udgave uden æ, ø, å:
>
> Annoncerdyr.asp?kategori=soeghjem
>
> - tjah, det er helt op til dig.
>
>
> Good luck,
> Jørn
>
>
> --
> Jørn Andersen,
> Brønshøj
--
KONKURRENCE PÅ HTML.dk:
fortæl hvordan din drømmeeditor ser ud
og vind luksus webhoteller fra Wannafind
KLIK HER! => http://www.html.dk/editor
| |
Jørn Andersen (20-04-2002)
| Kommentar Fra : Jørn Andersen |
Dato : 20-04-02 03:25 |
|
On Fri, 19 Apr 2002 23:24:43 +0000 (UTC), Helle <helven@tiscali.dk>
wrote:
>Det er nok fordi jeg stadig er ny i det med ASP, men hvis der nu i databasen
>skal hentes en kategori, og der skulle jo gerne i annoncen stå: søger nye
>hjem, hvordan kan jeg så bruge et nummer, rs("kategoriID")
>det skal vel være rs("kategori") den skal hente eller hvad. Jeg kan ikke
>rigtig overskue hvordan jeg får de to ting til at hænge sammen.
Nu kender jeg ikke alle detaljer i, hvad du vil, men hvis vi siger, at
en bruger vælger en kategori, og du gerne vil vise det der hører til
kategorien, så kan din selectbox fx se således ud:
<select name="kategori" style="blabla">
<option value="1">Søger nyt hjem</option>
<option value="2">Sælges</option>
<option value="3">Byttes</option>
.... osv.
</select>
Det du skal lægge mærke til her er, at det er 'value' som formularen
overfører som værdi for 'kategori'. (Jeg har her valgt, at det er tal,
men det kunne ligeså vel være 'soeghjem', 'saelges' osv.)
Det du så skal er at have en tabel i din database, der fx hedder
tblKategori med (mindst) to felter: 'kategoriID' og 'kategori'.
Du bruger så et kald til databasen til at "befolke" din selectbox:
strSql = "SELECT kategori, kategoriID FROM tblKategori" & _
" WHERE (etellerandet) ORDER BY kategoriID"
Selectboxen dannes så med noget i retning af:
Response.Write "<select name=""kategori"">" & vbcrlf
Do While Not rs.EOF
Response.Write "<option value=""" & rs("kategoriID") & """>" &_
rs(kategori") & "</option>" & vbcrlf
rs.MoveNext
Loop
Response.Write "</select>" & vbcrlf
Du skal altså bruge både rs("kategoriID") (til den værdi, der skal
overføres) og rs("kategori") (til det der skal vises).
Men meningen er jo også, at der skal vælges en værdi til
select-boksen. Så hvis du har hentet den valgte kategori med:
intKategori = CInt(Request.QueryString("kategori"))
bliver option-linien ændret til:
Response.Write "<option value=""" & rs("kategoriID") & """"
If rs("kategoriID") = intKategori Then
Response.Write " selected"
End If
Response.Write ">" & rs(kategori") & "</option>" & vbcrlf
Fordelen ved at gøre det på denne måde er - ud over at du slipper for
at have æ, ø og å i din URL - at du gør din kode mere uafhængig af de
data, du skal behandle.
Det gør fx, at hvis du finder ud af at teksten til en af værdierne
skal ændres, så gøres det ét sted, nemlig i databasen, og du skal ikke
lede koden igennem for at ændre et par bogstaver alle mulige underlige
steder. Det samme gælder, hvis du vil tilføje en ny kategori.
(Her er det så også en fordel, at din database er nogenlunde
"normaliseret", så du fx har kategorier i en tabel for sig - og
kategoriID er bundet til et tilsvarende felt i annonce-tabellen.)
>Skal jeg så allerede i formularen der indtastes oplysninger i skrive en masse
>if´er f.eks. hvis kategori = søger nye hjem, så er kategoriID = 3 og sætte
>det i databasen?
>Håber du kan se hvad jeg mener med det her, da det sikkert er et tåbeligt
>spørgsmål.
Spørgsmålet er ikke tåbeligt - der er en masse teknikker i ASP, som
man først lærer, når man støder på et behov for at lære det :)
Efterhånden vil du sikkert finde det nyttigt at lægge den slags
små-rutiner ind i en funktion, så at når du skal befolke en
select-box, så kan du bare fodre funktionen med DSN, Sql-streng, navn
og hvilken værdi, der er "selected" - så er det en let sag at fylde
siden med selectbokse, hvis det er det du skulle have lyst til.
Håber du kan bruge noget af det.
Good luck,
Jørn
--
Jørn Andersen,
Brønshøj
| |
Helle (20-04-2002)
| Kommentar Fra : Helle |
Dato : 20-04-02 13:11 |
|
Hej Jørn!
Tusind tak for at du har gidet bruge tid på at hjælpe mig.
Jeg kan helt sikkert bruge det.
Et sidste spørgsmål: Hvad med det med at få vist kategorien "søger nye hjem",
vil der ikke være problemer med ø-ét der, når det hentes fra databasen og vises
på skærmen?.
Jeg har prøvet at sætte en mega-tag ind som der var en der sagde at jeg
manglede:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
og så blev der vist underlige tegn alle de steder jeg havde skrevet æ, ø og å.
Mange hilsner Helle
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jørn Andersen (20-04-2002)
| Kommentar Fra : Jørn Andersen |
Dato : 20-04-02 15:40 |
|
On Sat, 20 Apr 2002 12:10:44 +0000 (UTC), Helle <helven@tiscali.dk>
wrote:
Hej Helle,
>Tusind tak for at du har gidet bruge tid på at hjælpe mig.
>Jeg kan helt sikkert bruge det.
Glimrende :)
>Et sidste spørgsmål: Hvad med det med at få vist kategorien "søger nye hjem",
>vil der ikke være problemer med ø-ét der, når det hentes fra databasen og vises
>på skærmen?.
Nej, det vil der normalt ikke være noget problem i. Hvis du
undtagelsesvis skulle få problemer, så løs det konkret til den tid.
>Jeg har prøvet at sætte en mega-tag ind som der var en der sagde at jeg
>manglede:
><meta http-equiv="Content-Type" content="text/html; charset=utf-8">
Til dansk (og engelsk m.v.) brug
charset=iso-8859-1
Det er i øvrigt altid en god idé at indsætte denne oplysning. Så
slipper brugere, der måske har en anden default-indstilling, som regel
for at omstille deres browsere.
Good luck,
Jørn
--
Jørn Andersen,
Brønshøj
| |
Helle (21-04-2002)
| Kommentar Fra : Helle |
Dato : 21-04-02 20:38 |
|
Hej Jørn!
Tak!
Er det korrekt at Meta tags kun skal være på default siden, men denne:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">, skal være på
alle siderne?
Hilsen Helle
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
|
|