/ 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
Problemer med variabler
Fra : Bjørn Jakobsen


Dato : 05-03-02 21:34

Hei

Jeg har en database med diverse opplysninger over våre medlemmer. I enkelte
poster er f.eks Adresse1, Adresse2 og/eller Padresse tomme. Det som skjer er
at jeg
"mister" disse postene ved utlisting/spørring til databasen. Brukere skal
via søkeskjema ha mulighet til å søke i de forskjellige kolonnene, og dette
fungerer bortsett fra de postene som faller utenfor. Noen som kan hjelpe?

Bjørn

<%
Dim Recordset1__varNavn
Recordset1__varNavn = "%"
if (Request.QueryString("txtNavn") <> "") then Recordset1__varNavn =
Request.QueryString("txtNavn")
%>
<%
Dim Recordset1__varAdresse
Recordset1__varAdresse = "%"
if (Request.QueryString("txtAdresse2") <> "") then Recordset1__varAdresse
= Request.QueryString("txtAdresse2")
%>
osv.

Recordset1.Source = "SELECT ID, Dato, Aar, Navn, Adresse1, Adresse2,
Padresse, Telefon, Mobil, Faks FROM Table WHERE Dato LIKE '" +
Replace(Recordset1__varDato, "'", "''") + "' AND Aar LIKE '" +
Replace(Recordset1__varAar, "'", "''") + "' AND Navn LIKE '" +
Replace(Recordset1__varNavn, "'", "''") + "' AND Adresse2 LIKE '" +
Replace(Recordset1__varAdresse, "'", "''") + "' AND Padresse LIKE '" +
Replace(Recordset1__varPadresse, "'", "''") + "' AND Telefon LIKE '" +
Replace(Recordset1__varTelefon, "'", "''") + "' AND Mobil LIKE '" +
Replace(Recordset1__varMobil, "'", "''") + "' AND Faks LIKE '" +
Replace(Recordset1__varFaks, "'", "''") + "' ORDER BY Navn"







 
 
Jørn Andersen (06-03-2002)
Kommentar
Fra : Jørn Andersen


Dato : 06-03-02 01:32

On Tue, 5 Mar 2002 21:33:55 +0100, "Bjørn Jakobsen"
<bjornja@vestfoldnett.no> wrote:

>Jeg har en database med diverse opplysninger over våre medlemmer. I enkelte
>poster er f.eks Adresse1, Adresse2 og/eller Padresse tomme. Det som skjer er
>at jeg
>"mister" disse postene ved utlisting/spørring til databasen. Brukere skal
>via søkeskjema ha mulighet til å søke i de forskjellige kolonnene, og dette
>fungerer bortsett fra de postene som faller utenfor. Noen som kan hjelpe?
>
>Bjørn
>
><%
>Dim Recordset1__varNavn
>Recordset1__varNavn = "%"
>if (Request.QueryString("txtNavn") <> "") then Recordset1__varNavn =
>Request.QueryString("txtNavn")

Hvis et databasefelt er tomt, så har den værdien Null (som ikke er det
samme som Empty eller 0 eller ""), så du er nødt til at checke på den
også:
Recordset1__varNavn = "%"
txtNavn = Request.QueryString("txtNavn")
If Trim(txtNavn) <> "" Or Trim(txtNavn) <> Null Then
Recordset1__varNavn = Request.QueryString("txtNavn")

(Hvis du checker for en tom streng, så brug altid Trim også.)

Good luck,
Jørn

--
Jørn Andersen,
Brønshøj

Bjørn Jakobsen (06-03-2002)
Kommentar
Fra : Bjørn Jakobsen


Dato : 06-03-02 21:57

Takk for tipset. Har også vært inne på tanken med IS NULL, men fikk beskjed
om "Null data". Uansett, jeg prøver.

Takk for hjelpen!

Bjørn

"Jørn Andersen" <jorn@jorna.dk> wrote in message
news:dgoa8u858pup49942d97v9ll8367pf7sfn@4ax.com...
> On Tue, 5 Mar 2002 21:33:55 +0100, "Bjørn Jakobsen"
> <bjornja@vestfoldnett.no> wrote:
>
> >Jeg har en database med diverse opplysninger over våre medlemmer. I
enkelte
> >poster er f.eks Adresse1, Adresse2 og/eller Padresse tomme. Det som skjer
er
> >at jeg
> >"mister" disse postene ved utlisting/spørring til databasen. Brukere skal
> >via søkeskjema ha mulighet til å søke i de forskjellige kolonnene, og
dette
> >fungerer bortsett fra de postene som faller utenfor. Noen som kan hjelpe?
> >
> >Bjørn
> >
> ><%
> >Dim Recordset1__varNavn
> >Recordset1__varNavn = "%"
> >if (Request.QueryString("txtNavn") <> "") then Recordset1__varNavn =
> >Request.QueryString("txtNavn")
>
> Hvis et databasefelt er tomt, så har den værdien Null (som ikke er det
> samme som Empty eller 0 eller ""), så du er nødt til at checke på den
> også:
> Recordset1__varNavn = "%"
> txtNavn = Request.QueryString("txtNavn")
> If Trim(txtNavn) <> "" Or Trim(txtNavn) <> Null Then
> Recordset1__varNavn = Request.QueryString("txtNavn")
>
> (Hvis du checker for en tom streng, så brug altid Trim også.)
>
> Good luck,
> Jørn
>
> --
> Jørn Andersen,
> Brønshøj



Jørn Andersen (07-03-2002)
Kommentar
Fra : Jørn Andersen


Dato : 07-03-02 12:40

On Wed, 6 Mar 2002 21:57:21 +0100, "Bjørn Jakobsen"
<bjornja@vestfoldnett.no> wrote:

>Takk for tipset. Har også vært inne på tanken med IS NULL, men fikk beskjed
>om "Null data". Uansett, jeg prøver.

Jeg tror egentlig også der er en fejl i mit forslag:

>> Recordset1__varNavn = "%"
>> txtNavn = Request.QueryString("txtNavn")
>> If Trim(txtNavn) <> "" Or Trim(txtNavn) <> Null Then
>> Recordset1__varNavn = Request.QueryString("txtNavn")

If Trim(txtNavn) <> "" Or Not IsNull(txtNavn) Then

- eller rettere 2 fejl:
1) Det er altid et problem at *sammenligne* med Null - bedre at checke
for Null (med IsNull)
2) Og det giver selvfølgelig ingen mening at Trim'me Null

Good luck,
Jørn


--
Jørn Andersen,
Brønshøj

Jørn Andersen (07-03-2002)
Kommentar
Fra : Jørn Andersen


Dato : 07-03-02 13:10

On Thu, 07 Mar 2002 12:39:38 +0100, Jørn Andersen <jorn@jorna.dk>
wrote:

>If Trim(txtNavn) <> "" Or Not IsNull(txtNavn) Then

- og så skal det selvfølgelig være "And" i st.f. "Or"

Good luck,
Jørn

--
Jørn Andersen,
Brønshøj

Bjørn Jakobsen (07-03-2002)
Kommentar
Fra : Bjørn Jakobsen


Dato : 07-03-02 14:25

Hei, dette må jeg forsøke!

Takk for hjelpen.

Har et annet problem også som jeg trenger litt hjelp med:

Fra en søkeside ønsker jeg å la brukerne velge fra en dropdown liste, la oss
kalle den "Valg1". Brukeren får her to valg, enten "større enn eller lik"
(>=)
eller "mindre enn eller lik" (<=) et variabelt tall som brukeren kan taste
inn i tekstfeltet "txtFormue".

Har knottet litt på dette, men får ikke dette til å fungere. Hva gjør jeg
galt?

Bjørn Jakobsen

Script følger:

<%
Dim Valg1, Search_String
Valg1 = Request("Valg1")
SearchColumn = "Formue"
if(Valg1 <> ">=") then
Search_String = "WHERE " & "txtFormue" & " LIKE '%"
else
if(Valg1 = ">=") then
Search_String = "WHERE " & "txtFormue" & " LIKE '>=%"
else
if(Valg1 = "<=") then
Search_String = "WHERE " & "txtFormue" & " LIKE '<=%"
else
end if
%>

"Jørn Andersen" <jorn@jorna.dk> wrote in message
news:c2me8ug4mtfjcf7857mlcmaho5tc9ct2m3@4ax.com...
> On Thu, 07 Mar 2002 12:39:38 +0100, Jørn Andersen <jorn@jorna.dk>
> wrote:
>
> >If Trim(txtNavn) <> "" Or Not IsNull(txtNavn) Then
>
> - og så skal det selvfølgelig være "And" i st.f. "Or"
>
> Good luck,
> Jørn
>
> --
> Jørn Andersen,
> Brønshøj



Jørn Andersen (07-03-2002)
Kommentar
Fra : Jørn Andersen


Dato : 07-03-02 15:09

On Thu, 7 Mar 2002 14:25:10 +0100, "Bjørn Jakobsen"
<bjornja@vestfoldnett.no> wrote:

>Fra en søkeside ønsker jeg å la brukerne velge fra en dropdown liste, la oss
>kalle den "Valg1". Brukeren får her to valg, enten "større enn eller lik"
>(>=)
>eller "mindre enn eller lik" (<=) et variabelt tall som brukeren kan taste
>inn i tekstfeltet "txtFormue".
<snip>

><%
>Dim Valg1, Search_String
>Valg1 = Request("Valg1")
>SearchColumn = "Formue"
>if(Valg1 <> ">=") then
>Search_String = "WHERE " & "txtFormue" & " LIKE '%"
> else
>if(Valg1 = ">=") then
>Search_String = "WHERE " & "txtFormue" & " LIKE '>=%"
> else
>if(Valg1 = "<=") then
>Search_String = "WHERE " & "txtFormue" & " LIKE '<=%"
> else
> end if
>%>

Der er flere ting galt :)
Hvis du skal bruge flere if'er, så:
If .. Then
ElseIf ... Then
ElseIf ... Then
Else
End If
- men hvis du ellers har "End If"'er nok, skulle dit eget nu også
virke.
(Nogle foretrækker Case Select i st.f. mange If'er)

Dernæst kan du ikke bruge LIKE sammen med større/mindre
sammenligninger.

Desuden: Er txtFormue ikke en variabel? SOm du vil sammenligne med et
*tal* fra databasen - så:
intFormue = CLng(txtFormue)
" WHERE fieldname <= " & intFormue & ";"
- hvor feltnavnet fra db er "fieldname"

Resten er lidt uigennemskueligt for mig - udskriv evt. din SQL-streng
med:
Response.Write strSQL
Response.End

- så bliver det sikkert mere gennemskueligt, hvor din fel ligger.


Good luck,
Jørn


PS: Gider du tage et kig på:
<URL: http://www.usenet.dk/netikette/citatteknik.html>

--
Jørn Andersen,
Brønshøj

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

Månedens bedste
Årets bedste
Sidste års bedste