Just nu i M3-nätverket
Jump to content

Inkompatibla typer...


.mixon

Recommended Posts

Hej!

 

Varför får jag följande felmeddelande:

 

Körningsfel i Microsoft VBScript fel '800a000d'

 

Inkompatibla typer: '[string: "phx"]'

 

/mhl/03/status.asp, rad 53

 

när jag kör:

 

(rad 53) If Request.QueryString("team") Then

status = "SELECT cnt, p, team, nick, tm, first, last, status, sttxt FROM statistics WHERE '" & Request.QueryString("team") & "' in AND '" & Request.QueryString("get") & "' in (status) ORDER BY team ASC, last ASC, first ASC"

Else

status = "SELECT cnt, p, team, nick, tm, first, last, status, sttxt FROM statistics WHERE '" & Request.QueryString("get") & "' in (status) ORDER BY team ASC, last ASC, first ASC"

End If

Link to comment
Share on other sites

If Request.QueryString("team") Then

 

Vad frågar den raden?

 

det kanske ska vara

If Request.QueryString("team") = 'hej' Then

 

Link to comment
Share on other sites

Nej, jag vill bara köra rad 54 om det är så att Request.QueryString("team") är aktiverad. Om bara sidan kallas på t.ex. sida.asp istället för sida.asp?team=hej då ska rad 56 laddas istället.

 

Har gjort så på en annan sida och då funkar det utmärkt... det är bara här det inte vill.

 

 

Link to comment
Share on other sites

Mr Andersson

 

If Request.QueryString("team") Then

 

Måste man inte ha något att jämföra med,

 

If Request.QueryString("team") > "" Then

 

 

Link to comment
Share on other sites

Clas Ericson
If Request.QueryString("team") Then

En if-sats kräver en boolesk datatyp, sant eller falskt. När du begär frågesträngen så returneras datatypen sträng. Om du fick exakt ovanstående kod att fungera på någon annan sida så bör du kolla vad du skickar för värden på den sidan. Då kanske du löser även det här. Det kan nämligen vara så att ASP försöker utvärdera värdet som eventuellt skickas och om det är något värde som kan härledas till sant/falskt så antar ASP det värdet.

 

Vore jag dig, skulle jag göra på följande sätt.

If Request.QueryString <> "" Then

Då fungerar det som du har tänkt dig.

 

//Clas

 

Link to comment
Share on other sites

>If Request.QueryString("team") Then

>Måste man inte ha något att jämföra med,

>If Request.QueryString("team") > "" Then

 

njäej... inte om det handlar om booleska värden.

IF (request.querystring("variabel")) THEN

menas att om variabel=true kör koden under osv.

man kan även skriva det som

IF (request.querystring("variabel")=true) THEN

 

David

 

Link to comment
Share on other sites

Hej!

 

Den kod som funkar är denna:

 

If Request.QueryString("id") Then

Col = " SELECT * FROM records WHERE kolumn = 'breakdown' AND id = " & Request.QueryString("id") & "; "

Else

Col = " SELECT * FROM records WHERE kolumn = 'breakdown' ORDER BY id DESC; "

End If

 

Och här har QueryStringen ett tal som värde till skillnad från förra där det är en sträng, t.ex. phx som är värdet. Kan detta vara skillnaden som gör att det inte funkar?

 

mixon

 

Link to comment
Share on other sites

 

Hej!

 

Testade ditt förslag men fick då resultatet där det inte tas någon hänsyn till vilket lag man har valt i QueryStringen och alla lag visas.

 

Tack ändå!

 

Link to comment
Share on other sites

Mr Andersson

En IF-sats ska ALLTID (!!ALLTID!!) ha SANT (1) eller FALSKT (0) som resultat. Om ID är ett tal som matchar detta så räcker det, men om ID är "Gurka" så kan inte kompilatorn avgöra detta, alltså måste du jämföra med något som ger sant eller falskt som resultat. Det finns inga genvägar runt detta.

 

Link to comment
Share on other sites

Då du tipsade om

If Request.QueryString <> "" Then

och jag testade det så blev det inte rätt men jag ändrade till

If Request.QueryString("team") <> "" Then

och då funkade det. Kanske var det så du menade från början men att jag inte fattade det men nu funkar det iaf.

 

Poäng till dig och tack för hjälpen!

 

mixon

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...