webForumDet fria alternativet

Inkompatibla typer

ASP

24 svar · 349 visningar · startad av Gimbo

Medlem sedan dec. 20001 626 inlägg
Frågan#1

Jag får detta felmeddelande när jag ska försöka skriva ngt till databasen:

Körningsfel i Microsoft VBScript fel '800a000d' 

Inkompatibla typer
<%If Request.QueryString("action") = "skicka" Then

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db

Namn      = Request.Form("namn") 
Email       = Request.Form("email") 
Bild          = Request.Form("bild") 
Fraga      = Request.Form("fraga") 
Rubrik     = Request.Form("rubrik")
Info     = Request.Form("info")

SQL = "Insert Into galleri(namn,email,bild,fraga,rubrik,Info) Values('" & Namn & "','" & Email & "','" & Bild & "'," & Fraga & ",'" & Rubrik & "','" & Info & "')"
Conn.Execute(SQL)

Session("mess") = "Din bild hamnar på sidan snarast möjligast
Response.Redirect "index.asp"

End If

Else
  Session("mess") = "Ladda upp en bild först!!!"
  Response.Redirect "laddaupp.asp"
End If
%>
Medlem sedan feb. 20012 412 inlägg
#2

RED: Läste lite för fort.

Medlem sedan feb. 20012 412 inlägg
#3

Ahh, nu ser jag. Du avslutar If-satsen och sedan gör du en Else precis efter. Alltså du har 2 st End If men bara en If.

Medlem sedan dec. 20001 626 inlägg
#4

jag försökta att ta bort en av de men det fungerade inte, kan det va så att jag har en kolumn som heter rosta i databasen som jag inte lägger ngn post i, att det e den som spökar?? jag har satt den datatypen till tal och värdet på den 0, dvs det är en röstningsfunktion...

Medlem sedan feb. 20012 412 inlägg
#5

Vad får du ut på skärmen av denna koden?

<%If Request.QueryString("action") = "skicka" Then

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db

Namn      = Request.Form("namn") 
Email       = Request.Form("email") 
Bild          = Request.Form("bild") 
Fraga      = Request.Form("fraga") 
Rubrik     = Request.Form("rubrik")
Info     = Request.Form("info")

SQL = "Insert Into galleri(namn,email,bild,fraga,rubrik,Info) Values('" & Namn & "','" & Email & "','" & Bild & "'," & Fraga & ",'" & Rubrik & "','" & Info & "')"

response.write SQL

'Conn.Execute(SQL)

Session("mess") = "Din bild hamnar på sidan snarast möjligast
'Response.Redirect "index.asp"

Else
  Session("mess") = "Ladda upp en bild först!!!"
  'Response.Redirect "laddaupp.asp"
End If
%>
Medlem sedan dec. 20001 626 inlägg
#6

Jag får upp det angivna felmeddelandet, men jag har kommit problemet än mernärmare, när jag tar bort Info, från hela den sattsen dvs att den inte läses in i variabeln Info och inte skriver den till databasen så får jag inga felmeddeanden och koden fungerar fin fint.

Kan det vara ngt med att info är en textarea??

så här ser info formuläret ut:

<textarea name="info" cols="40" rows="10"></textarea>

så fort jag tar bort allt som har med info att göra så fungerar scriptet perfekt, men när jag lägger till det så får jag det angivna felmeddelandet...

Medlem sedan feb. 20012 412 inlägg
#7

Du måste fått ut utskriften av SQL-frågan också. Så länge du inte delger den kan jag tyvärr inte hjälpa dig.

Medlem sedan dec. 20001 626 inlägg
#8

Vad menar du med utskriften av SQL sattsen??? alltså det enda jag får är det felmeddelandet under själv formuläret som jag fyller i när jag ska skriva till databasen, jag skriver nämligen till databasen via ett formulär...

Vill du att jag bara ska köra asp koden för skrivningen till databasen, dvs den koden utan ngt formulär??

Medlem sedan dec. 200012 464 inlägg
#9

Vilken rad får du fel på?

Felet ligger i skriptet och inte i sql-frågan.

Medlem sedan feb. 20012 412 inlägg
#10

Skriv i datan i formuläret och tryck på knappen så du kommer till sidan som kör ovanstående kod. Då ska du få en utskift på din SQL-fråga.

Medlem sedan dec. 20001 626 inlägg
#11

Alltså felmeddelandet jag får är detta:

Körningsfel i Microsoft VBScript fel '800a000d' 

Inkompatibla typer 

/tavling/skicka.asp, rad 140

Och felet ligger i det där med info för när jag tar bort det så fungerar scruiptet, vart kan felet ligga??

Medlem sedan feb. 20012 412 inlägg
#12

Vilken rad är rad 140?

Medlem sedan dec. 20001 626 inlägg
#13

insert into uttrycket

Medlem sedan dec. 20001 626 inlägg
#14

jag sa fel felet är här, rad 140 är denna:

Info = Request.Form("info")

den raden är 140

Medlem sedan dec. 200012 464 inlägg
#15

Oki doki. Hur är info i definierat i ditt formulär?

Medlem sedan dec. 20001 626 inlägg
#16

<textarea name="info" cols="40" rows="10"></textarea>

Medlem sedan dec. 20001 626 inlägg
#17

ingen som kan hjälpa mig??

Medlem sedan juni 200032 967 inlägg
#18

Prova:

Info = "" &  Request.Form("info")

Mvh,

Medlem sedan dec. 20001 626 inlägg
#19

nope jag får fortfarande samma felmeddelande, kan det inte vara textarean som spökar??

Medlem sedan juni 200032 967 inlägg
#20

Vete 17. Har du provat att byta namn på textarean? Det ser ju faktiskt helt rätt ut...

Jag kan inte förstå vad problemet är.

Mvh,

262 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)