webForumDet fria alternativet

Fel mess!

ASPur ASP

16 svar · 466 visningar · startad av paddan

paddanMedlem sedan dec. 2002299 inlägg
#1

Vad är fel på denna koden??

strSQL = "INSERT INTO members (hemsida) VALUES ('" & filename & "')" AND WHERE id=" & Session("id")

Fel mess:
Microsoft VBScript compilation error '800a0401'

Expected end of statement

/upload/upload_data.asp, line 75

strSQL = "INSERT INTO members (hemsida) VALUES ('" & filename & "')" AND WHERE id=" & Session("id")
-------------------------------------------------------------------------------^

Mvh Martin

JosefMedlem sedan mars 20023 561 inlägg
#2

Du kan inte ha ett WHERE-argument i en insert-sats.

QimenMedlem sedan juni 20015 009 inlägg
#3

Men då hade jag ju rätt *gaah* :OO :e

LarsGMedlem sedan dec. 200012 464 inlägg
#4
strSQL = "update members set hemsida = '" & filename _
& "'  WHERE id=" & Session("id")

En kontamination minsann.

NickemannenMedlem sedan aug. 20003 575 inlägg
#5

Du kan inte använda INSERT och WHERE

Du får använda UPDATE istället.

Ex:

strSql = "Update members Set hemsida = '"&filename&"' where id = "&Session("id")

// Red Gaaah, skulle inte hämtat colan då har ju jag varit först.

// Red men det var inte det som var felet det var ju

strSQL = "INSERT INTO members (hemsida) VALUES ('" & filename & "')" AND WHERE id=" & Session("id")

paddanMedlem sedan dec. 2002299 inlägg
#6

Hur blir dte nu killar??

Mvh Martin Sköld

paddanMedlem sedan dec. 2002299 inlägg
#7

Feltyp:
Microsoft JET Database Engine (0x80040E14)
Syntaxfel (operator saknas) i frågeuttrycket 'id ='.
/upload/upload_data.asp, line 77

med den koden!!

@ndersMedlem sedan juni 200032 969 inlägg
#8

Då är session("id") tom.

paddanMedlem sedan dec. 2002299 inlägg
#9

Räcker denna kodne till att ladd aupp en bild och spra filnamnet i en databas??

Mvh Martin Sköld
<%
Sub BuildUploadRequest(RequestBin)
'Get the boundary
PosBeg = 1
PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
boundaryPos = InstrB(1,RequestBin,boundary)
'Get all data inside the boundaries
Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString("--")))
'Members variable of objects are put in a dictionary object
Dim UploadControl
Set UploadControl = CreateObject("Scripting.Dictionary")
'Get an object name
Pos = InstrB(BoundaryPos,RequestBin,getByteString("Content-Disposition"))
Pos = InstrB(Pos,RequestBin,getByteString("name="))
PosBeg = Pos+6
PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))
Name = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
PosFile = InstrB(BoundaryPos,RequestBin,getByteString("filename="))
PosBound = InstrB(PosEnd,RequestBin,boundary)
'Test if object is of file type
If PosFile<>0 AND (PosFile<PosBound) Then
'Get Filename, content-type and content of file
PosBeg = PosFile + 10
PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))
FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
'Add filename to dictionary object
UploadControl.Add "FileName", FileName
Pos = InstrB(PosEnd,RequestBin,getByteString("Content-Type:"))
PosBeg = Pos+14
PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
'Add content-type to dictionary object
ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
UploadControl.Add "ContentType",ContentType
'Get content of object
PosBeg = PosEnd+4
PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
Else
'Get content of object
Pos = InstrB(Pos,RequestBin,getByteString(chr(13)))
PosBeg = Pos+4
PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
Value = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
End If
'Add content to dictionary object
UploadControl.Add "Value" , Value
'Add dictionary object to main dictionary
UploadRequest.Add name, UploadControl
'Loop to next object
BoundaryPos=InstrB(BoundaryPos+LenB(boundary),RequestBin,boundary)
Loop

End Sub

'String to byte string conversion
Function getByteString(StringStr)
For i = 1 to Len(StringStr)
char = Mid(StringStr,i,1)
getByteString = getByteString & chrB(AscB(char))
Next
End Function

'Byte string to string conversion
Function getString(StringBin)
getString =""
For intCount = 1 to LenB(StringBin)
getString = getString & chr(AscB(MidB(StringBin,intCount,1)))
Next
End Function
%>

solbulleMedlem sedan mars 20015 287 inlägg
#10

Nej.

@ndersMedlem sedan juni 200032 969 inlägg
#11

Det märker du väl enklast genom att testa? Det är inte lätt för oss att veta.

Använd [kod]-taggar så blir koden mer lättläst.

paddanMedlem sedan dec. 2002299 inlägg
#12

Är det någon som har en hel ladda upp kod där den när den är klar bara skickas till en annan sida...

Mvh Martin

@ndersMedlem sedan juni 200032 969 inlägg
#13

Titta efter OveRRidEs uploadscript i scriptarkivet. Det brukar duga gott.

Mvh

solbulleMedlem sedan mars 20015 287 inlägg
#14

Men allvarligt Paddan, fungerar inte ditt script? Samma script har avhandlats en del här i forumet så det ska finnas en del info om det om du söker.

Vad är egentligen problemet?

OveRRides script är bra, men jag tvivlar på att du finner det lättare än detta, OM du inte söker o hittar de anpassningar som folk här i forumet gjort av det.

paddanMedlem sedan dec. 2002299 inlägg
#15

Har försökt modifera de men får inte rätt på det..
Allt jag vill är att man väljer bild på en sida och sedan skickas man till typ upload.asp och sedan tillbaka tillsidan man var innan..
Ingen sida där man ser det färdiga exemplet...
+Så vill jag att filnamnet sparas i en databas..
Någon som kan hjälpa mig!

paddanMedlem sedan dec. 2002299 inlägg
#16

Men jag klarar inte det får inte rätt påd et liksom..!

solbulleMedlem sedan mars 20015 287 inlägg
#17

Nu du... se till att du har rätt filnamn på dina tre filer bara.

<!--#include file="upload_data.asp" -->
<%
If request.querystring("submit")="yes" THEN
Error = "0"

Response.Expires=0
Response.Buffer = TRUE
Response.Clear
'Response.BinaryWrite(Request.BinaryRead(Request.TotalBytes))
byteCount = Request.TotalBytes
'Response.BinaryWrite(Request.BinaryRead(varByteCount))

RequestBin = Request.BinaryRead(byteCount)
Dim UploadRequest
Set UploadRequest = CreateObject("Scripting.Dictionary")

BuildUploadRequest RequestBin

'email = UploadRequest.Item("email").Item("Value")

contentType = UploadRequest.Item("blob").Item("ContentType")
filepathname = UploadRequest.Item("blob").Item("FileName")
filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
value = UploadRequest.Item("blob").Item("Value")

If contentType="image/gif" OR contentType="image/pjpeg" THEN   'KOLLAR VAD DET ÄR FÖR TYP AV FIL, I DETTA FALL ENDAST .GIF ELLER .JPG BILDER
	If byteCount<=250000 THEN			'KONTROLLERAR STORLEKEN PÅ FILEN, HÄR 250 Kb MAX
		'Create FileSytemObject Component
		Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
	
		'Create and Write to a File
		pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
		' Set MyFile = ScriptObject.CreateTextFile(Left(Server.mappath(Request.ServerVariables("PATH_INFO")),pathEnd)&filename)
		Set MyFile = ScriptObject.CreateTextFile(Server.mappath(filename))  'HÄR ÄNDRAR NI SÖKVÄGEN DÄR FILEN SKA SPARAS, HÄR I SAMMA KATALOG SOM UPLOAD_DONE.ASP LIGGER I
		'response.write(Server.mappath(filename)) 
	
		For i = 1 to LenB(value)
		MyFile.Write chr(AscB(MidB(value,i,1)))
		Next
		MyFile.Close

Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("members.mdb")
'strSQL = "INSERT INTO members (filnamn) VALUES ('" & filename & "')"
strSql = "Update members Set hemsida = '"&filename&"' where id = "&Session("id")
objConn.Execute(strSQL)
objConn.Close : Set objConn = Nothing

response.redirect("uppladda.asp")

	Else
		Error = "Bilden får inte vara större än 250 kb"
	End If
Else
Error = "Du kan bara ladda upp GIF eller JPG bilder"
End If
End If
%>
<html>
<head>
<title>FEL!</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF">
<b><%
If Error<>"0" THEN
response.write "Uppladdningen misslyckades<br>"
response.write "Felet var: " & Error
Else
response.write "Uppladdning klar"
End If
%>
</b></font>
</body>
</html>
145 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
142 ms — hämta tråd, inlägg och bilagor (db)