/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Hvordan bevare værdi ?
Fra : Steen


Dato : 26-02-03 16:49

Hej

Jeg har et problem med en søgefunktion. Brugeren skriver et
søgeord i en boks. Hvis funktionen har 100 svar på dette søgeord,
så skulle jeg gerne kunne sideinddele resultatet. "Pageing" -
funktionen fungerer ganske efter hensigten lige indtil brugeren
klikker på "side 2". Så går det galt, fordi strengen som
indeholder søgeordet jo nu er tom ! !.

Hvorledes bevare jeg søgeordet som en "værdi" generelt. Jeg har
prøvet at lade formularen henvise til en anden asp-side. Jeg har
såmen også forsøgt med en "session-funktion", men det virker
ikke. Så har jeg rodet lidt med et "hidden" felt, men jeg kan
ikke "fastgøre" værdien i sideindelingen.
Har nogen en ide

Steen



--
Danmarks største specialiserede IT jobdatabase
- Udelukkende med IT- og internetrelaterede jobs
- Opret en profil og lad drømmejobbet finde dig
KLIK HER! => http://www.html.dk/job

 
 
Jens Gyldenkærne Cla~ (26-02-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 26-02-03 17:10

Steen skrev:

> Hvorledes bevare jeg søgeordet som en "værdi" generelt. Jeg har
> prøvet at lade formularen henvise til en anden asp-side.

Du kan godt have én side til at skrive søgeordet på og en anden
side til at vise resultaterne med. Men da din side 1 tilsyneladende
virker godt nok så er det ikke her skoen trykker.
Alle resultaterne skal vises på samme side - du ved jo ikke hvor
mange sider der er i alt, så sidelinkene skal alle gå til samme
side.

> Jeg har såmen også forsøgt med en "session-funktion", men det
> virker ikke.

Hvordan virker det ikke? Session-modellen er en mulighed - men den
kan fejle hvis en browser ikke understøtter cookies.

> Så har jeg rodet lidt med et "hidden" felt, men jeg kan
> ikke "fastgøre" værdien i sideindelingen.

Et hidden-felt hører til en formular - så hvis den værdi skal med
til næste side skal formen submittes. Det sker ikke hvis du blot
har normale links.

Hvis du sætter din form til at bruge get-metoden (så søgestrengen
kommer med i querystring) kan du lægge søgeparametrene oven i de
sideparametre der skal overføres.

De links der udgør sidenavigationen skal altså have de samme
parametre som side 1 - og derudover selvfølgelig et sidelink.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Steen (26-02-2003)
Kommentar
Fra : Steen


Dato : 26-02-03 17:34

Jens GyldenkærneClausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> Steen skrev:
>
> > Hvorledes bevare jeg søgeordet som en "værdi" generelt. Jeg har
> > prøvet at lade formularen henvise til en anden asp-side.
>
> Du kan godt have én side til at skrive søgeordet på og en anden
> side til at vise resultaterne med. Men da din side 1
tilsyneladende
> virker godt nok så er det ikke her skoen trykker.
> Alle resultaterne skal vises på samme side - du ved jo ikke hvor
> mange sider der er i alt, så sidelinkene skal alle gå til samme
> side.
> JA (pageing)

> > Jeg har såmen også forsøgt med en "session-funktion", men det
> > virker ikke.
>
> Hvordan virker det ikke? Session-modellen er en mulighed - men den
> kan fejle hvis en browser ikke understøtter cookies.

> Problemet som jeg ser det er, at brugeren jo så kan oprette mange
sessioner og det er vel næppe godt ?

> > Så har jeg rodet lidt med et "hidden" felt, men jeg kan
> > ikke "fastgøre" værdien i sideindelingen.
>
> Et hidden-felt hører til en formular - så hvis den værdi skal med
> til næste side skal formen submittes. Det sker ikke hvis du blot
> har normale links.

Jeg bruger en formular. Brugeren skriver søgeordet og klikker på
"søg" som er en submit-funktion (action="side2.asp). side2.asp
"gennemser" databasen og finder de links der passer på søgeordet.
Alle disse links skal sideindeles.
>
> Hvis du sætter din form til at bruge get-metoden (så søgestrengen
> kommer med i querystring) kan du lægge søgeparametrene oven i de
> sideparametre der skal overføres.

Altså selve "søgeordet" ?
>
> De links der udgør sidenavigationen skal altså have de samme
> parametre som side 1 - og derudover selvfølgelig et sidelink.
> --
JA. Du mener at parameterne skal indføres i denne syntaks som
genererer side-rækken vist herunder i uddrag eller ?

For i = 1 to intPages
if i = intPage then
Response.Write "<b>" & i & "</b> "
else
Response.Write " <a href=side2.asp?page="& i &" ><strong> " & i & "
</strong> </a> "




--
Danmarks største specialiserede IT jobdatabase
- Udelukkende med IT- og internetrelaterede jobs
- Opret en profil og lad drømmejobbet finde dig
KLIK HER! => http://www.html.dk/job

Jens Gyldenkærne Cla~ (26-02-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 26-02-03 18:04

Steen skrev:

[teknisk note - sæt venligst en tom linje mellem citater og din
egen tekst, ellers fejlmarkeres teksten hos mig som en del af
foregående citat (det er også lettere at læse med en smule luft)]

> Problemet som jeg ser det er, at brugeren jo så kan oprette
> mange sessioner og det er vel næppe godt ?

En bruger _kan_ godt oprette flere sessions - men normalt bruges
blot en.


> Jeg bruger en formular. Brugeren skriver søgeordet og klikker
> på "søg" som er en submit-funktion (action="side2.asp).

Bruger du method=post eller metod=get? (i sidstnævnte tilfælde
kaldes side2 med parametre a la side2.asp?x=hund&y=hest)


>> Hvis du sætter din form til at bruge get-metoden (så
>> søgestrengen kommer med i querystring) kan du lægge
>> søgeparametrene oven i de sideparametre der skal overføres.

> Altså selve "søgeordet" ?

Ja (alle de værdier du overfører fra formen).


> JA. Du mener at parameterne skal indføres i denne syntaks som
> genererer side-rækken vist herunder i uddrag eller ?

Præcis.

Hvis du nu øverst har

   Dim searchFor
   Dim page

   searchFor = Request.Querystring("searchFor")

   page = Request.Querystring("page")

- så kan du ændre linjen her:

> Response.Write " <a href=side2.asp?page="& i &" ><strong> " &
> i & " </strong> </a> "

til:

   Response.Write " <a href=side2.asp?searchFor=" & _
           searchFor & "&page=" & i & "><strong> " & _
           i & " </strong></a>"
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Steen (26-02-2003)
Kommentar
Fra : Steen


Dato : 26-02-03 20:05

Jens GyldenkærneClausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> Steen skrev:
>
>
>
> > Problemet som jeg ser det er, at brugeren jo så kan oprette
> > mange sessioner og det er vel næppe godt ?
>
> En bruger _kan_ godt oprette flere sessions - men normalt bruges
> blot en.
>
Ja, men hvis brugeren søger flere gange med forskellige søgeord så
opstår der vel flere sessioner ? Den løsning du skitserer ser dog ud
til at være den "mest rigtige".
>
> > Jeg bruger en formular. Brugeren skriver søgeordet og klikker
> > på "søg" som er en submit-funktion (action="side2.asp).
>
> Bruger du method=post eller metod=get? (i sidstnævnte tilfælde
> kaldes side2 med parametre a la side2.asp?x=hund&y=hest)
>
Jeg har brugt method=post, men jeg forstår at det er method=get jeg
skal bruge ?

> >> Hvis du sætter din form til at bruge get-metoden (så
> >> søgestrengen kommer med i querystring) kan du lægge
> >> søgeparametrene oven i de sideparametre der skal overføres.
>
> > Altså selve "søgeordet" ?
>
> Ja (alle de værdier du overfører fra formen).
>
Okey..

> > JA. Du mener at parameterne skal indføres i denne syntaks som
> > genererer side-rækken vist herunder i uddrag eller ?
>
> Præcis.
>
> Hvis du nu øverst har
>
>    Dim searchFor
>    Dim page
>
>    searchFor = Request.Querystring("searchFor")
>
>    page = Request.Querystring("page")
>
> - så kan du ændre linjen her:
>
> > Response.Write " <a href=side2.asp?page="& i &" ><strong> " &
> > i & " </strong> </a> "
>
> til:
>
>    Response.Write " <a href=side2.asp?searchFor=" & _
>            searchFor & "&page=" & i & "><strong> " & _
>            i & " </strong></a>"
> --

Jeg tror jeg kan se hvad du mener. Det vil så sandelig arbejde sige
dig tak for.

Steen N.



--
Danmarks største specialiserede IT jobdatabase
- Udelukkende med IT- og internetrelaterede jobs
- Opret en profil og lad drømmejobbet finde dig
KLIK HER! => http://www.html.dk/job

Jens Gyldenkærne Cla~ (27-02-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 27-02-03 11:30

Steen skrev:

> Ja, men hvis brugeren søger flere gange med forskellige
> søgeord så opstår der vel flere sessioner ?

Nej.

Hvis du gemmer søgestrengen i session("searchFor") overskrives
denne sessionvariabel bare ved nye søgninger.


> Jeg har brugt method=post, men jeg forstår at det er
> method=get jeg skal bruge ?

Hvis du skal undgå at bruge formknapper til alle dine sidelinks, så
ja.


> Jeg tror jeg kan se hvad du mener. Det vil så sandelig arbejde
> sige dig tak for.

Held og lykke.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177554
Tips : 31968
Nyheder : 719565
Indlæg : 6408852
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste