Avatar billede l_otto Nybegynder
02. februar 2004 - 16:00 Der er 29 kommentarer og
1 løsning

anden måde at lave"update" på

end med :

if request.form("update") <> "" then
strSQL = "update hej set by='"&request.form("by")&"', osv


altå uden request.form.

det er til en mysql db

hjælp
Avatar billede Slettet bruger
02. februar 2004 - 16:05 #1
du skal jo hente dine request af formen, så den eneste anden jeg kan se er:

strVar = request.form("update")
strBy = request.form("update")

if strVar <> "" then
strSQL = "update hej set by='"& strBy  &"', osv
Avatar billede Slettet bruger
02. februar 2004 - 16:08 #2
husk i øvrigt at by er reserveret ord, så der skal ` rundt om
Avatar billede Slettet bruger
02. februar 2004 - 16:08 #3
dvs i stedet for by skal du skrive `by`
Avatar billede Slettet bruger
02. februar 2004 - 16:09 #4
ja da ikke når der står strBy vel ?
Avatar billede Slettet bruger
02. februar 2004 - 16:10 #5
stadig ved SET ...
Avatar billede Slettet bruger
02. februar 2004 - 16:12 #6
ahhhh, det er lige det med at åbne øjnene ;O) undskylder mit hurtige udbrud...
Avatar billede l_otto Nybegynder
02. februar 2004 - 16:16 #7
jeg vender tilbage.. :-)
Avatar billede eagleeye Praktikant
02. februar 2004 - 16:59 #8
Hvis du bruge method="post" som du nok gør når du bruger Request.Form så kan man tjekke om der er POST'ed data:

if request.ServerVariables("REQUET_METHOD") = "POST" then
  'Updater

end if
Avatar billede l_otto Nybegynder
03. februar 2004 - 09:31 #9
hej E. mit problem er at jeg skal uploade en xls. fil når jeg retter ...derfor kan jeg ikke bruge request.form.
Avatar billede Slettet bruger
03. februar 2004 - 12:59 #10
så skal du bruge upload komponentets fortegn istedet,

eks. kunne det se sådanne ud:

Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.OverwriteFiles = False
Count = Upload.SaveVirtual(sti)
strCd = Upload.Form("cd")

altså du bruger din uploads variable navn istedet for Request
Avatar billede l_otto Nybegynder
03. februar 2004 - 13:04 #11
det har jeg prøvet virker desværre ikke .. :-)
Avatar billede Slettet bruger
03. februar 2004 - 13:10 #12
ja det du ser der virker hos mig, må vi se noget kode ?
Avatar billede l_otto Nybegynder
03. februar 2004 - 13:12 #13
her kan du se hvordan det endte da jeg skulle oprette et emne med request.form


http://www.eksperten.dk/spm/453681
Avatar billede Slettet bruger
03. februar 2004 - 13:15 #14
ja okay, det var måske lidt overvældende meget kode at få ;O),

men der skriver du da at du ufik det til at virke ?
Avatar billede l_otto Nybegynder
03. februar 2004 - 13:16 #15
jep, men det var uden request.form....

nu skal jeg så have det til at virke med update, altså når jeg retter,,

er lige til frokost
Avatar billede eagleeye Praktikant
03. februar 2004 - 17:34 #16
Så skal du netop bruge det jeg har vist. Som tjekke som om formen er POST'et til siden.
Avatar billede l_otto Nybegynder
09. februar 2004 - 09:17 #17
hej E.

Kan man sætte den lige over i denne her:-)

<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={MySQL};SERVER &_

Conn.Open DSN

strSQL = "Select * From kk Where PIC_ID = " & Request.Querystring("PIC_ID")
Set rs = Conn.Execute(strSQL)



%>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={ &_
"
Conn.Open DSN

if request.form("update") <> "" then
strSQL = "update dkb set PIC_NAME='"&request.form("PIC_NAME")&"', U_PASSWORD = '"&request.form("U_PASSWORD")&"', U_ID= '"&request.form("U_ID")&"', U_EMAIL= '"&request.form("U_EMAIL")&"', PIC_DESC= '"&request.form("PIC_DESC")&"', mobil= '"&request.form("mobil")&"', email= '"&request.form("email")&"', fax= '"&request.form("fax")&"', PIC_IMAGE= '"&request.form("PIC_IMAGE")&"' where PIC_ID = " & request.querystring("PIC_ID")
set rs = Conn.execute(strSQL)
response.write("<a href='default.asp' target='_self'>Tlf besked er nu opdateret, tryk for at gå til forsiden")

end if
strSQL = "Select * From kk Where PIC_ID = " & Request.Querystring("PIC_ID")
Set rs = Conn.Execute(strSQL)


%>
Avatar billede eagleeye Praktikant
09. februar 2004 - 18:25 #18
Ja det kan man. Her er den sat omkring det hele, eller var det kun omkring noget af det?


<%
if request.ServerVariables("REQUET_METHOD") = "POST" then

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={MySQL};SERVER &_

Conn.Open DSN

strSQL = "Select * From kk Where PIC_ID = " & Request.Querystring("PIC_ID")
Set rs = Conn.Execute(strSQL)



%>
<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={ &_
"
Conn.Open DSN

if request.form("update") <> "" then
strSQL = "update dkb set PIC_NAME='"&request.form("PIC_NAME")&"', U_PASSWORD = '"&request.form("U_PASSWORD")&"', U_ID= '"&request.form("U_ID")&"', U_EMAIL= '"&request.form("U_EMAIL")&"', PIC_DESC= '"&request.form("PIC_DESC")&"', mobil= '"&request.form("mobil")&"', email= '"&request.form("email")&"', fax= '"&request.form("fax")&"', PIC_IMAGE= '"&request.form("PIC_IMAGE")&"' where PIC_ID = " & request.querystring("PIC_ID")
set rs = Conn.execute(strSQL)
response.write("<a href='default.asp' target='_self'>Tlf besked er nu opdateret, tryk for at gå til forsiden")

end if
strSQL = "Select * From kk Where PIC_ID = " & Request.Querystring("PIC_ID")
Set rs = Conn.Execute(strSQL)


end if
%>
Avatar billede l_otto Nybegynder
10. februar 2004 - 08:43 #19
hej e.

den er helt gal, hvis jeg sætter den ind, vil den slet ikke vise siden...

og det var jo meningen jeg ikke skulle bruge request.form for ellers får jeg denne fejl.

Cannot use Request.Form

/idebank/info.asp, line 253

Cannot use Request.Form collection after calling BinaryRead.


det er fordi jeg samtidig skal uploade en exl fil.
Avatar billede eagleeye Praktikant
10. februar 2004 - 18:40 #20
ok, derfor sprøgsmålet hvor meget skal med if sætningen :)

nej man kan ikke Request.Form når man bruger en upload komponent. Du skal bruge upload komponentens form collection som virker på samme mode som request.form. I stedet for at skriver Request skriver navnet på upload komponenten, så hvid du kalder objecet for Upload skriver man:

Upload.Form("xxx")
Avatar billede l_otto Nybegynder
12. februar 2004 - 13:59 #21
men jeg kan ikke finde den ? kan du ?

<%
'*** Pure ASP File Upload -----------------------------------------------------
' Copyright (c) 2001-2002 George Petrov, www.UDzone.com
' Process the upload
' Version: 2.0.9
'------------------------------------------------------------------------------
'*** File Upload to: """pictures""", Extensions: "GIF,JPG,JPEG,BMP,PNG,DOC,PDF,XLS", Form: form1, Redirect: "", "file", "", "uniq", "true", "15", "10" , "64", "48", "PIC_WIDTH", "PIC_HEIGHT", "60", "", "30", "10"

Dim GP_redirectPage, RequestBin, UploadQueryString, GP_uploadAction, UploadRequest
PureUploadSetup

If (CStr(Request.QueryString("GP_upload")) <> "") Then
  on error resume next
  Dim reqPureUploadVersion, foundPureUploadVersion
  reqPureUploadVersion = 2.09
  foundPureUploadVersion = getPureUploadVersion()
  if err or reqPureUploadVersion > foundPureUploadVersion then
    Response.Write "<b>You don't have latest version of ScriptLibrary/incPureUpload.asp uploaded on the server.</b><br>"
    Response.Write "This library is required for the current page. It is fully backwards compatible so old pages will work as well.<br>"
    Response.End   
  end if
  on error goto 0
  GP_redirectPage = ""
  Server.ScriptTimeout = 600
 
  RequestBin = Request.BinaryRead(Request.TotalBytes)
  Set UploadRequest = CreateObject("Scripting.Dictionary") 
  BuildUploadRequest RequestBin, """../d/filer""", "file", "", "uniq"
 
  If (GP_redirectPage <> "" and not (CStr(UploadFormRequest("MM_insert")) <> "" or CStr(UploadFormRequest("MM_update")) <> "")) Then
    If (InStr(1, GP_redirectPage, "?", vbTextCompare) = 0 And UploadQueryString <> "") Then
      GP_redirectPage = GP_redirectPage & "?" & UploadQueryString
    End If
    Response.Redirect(GP_redirectPage) 
  end if 
else
  if UploadQueryString <> "" then
    UploadQueryString = UploadQueryString & "&GP_upload=true"
  else 
    UploadQueryString = "GP_upload=true"
  end if 
end if
' End Pure Upload
'------------------------------------------------------------------------------
%>
<%
' *** Edit Operations: (Modified for File Upload) declare variables

MM_editAction = CStr(Request.ServerVariables("URL")) 'MM_editAction = CStr(Request("URL"))
If (UploadQueryString <> "") Then
  MM_editAction = MM_editAction & "?" & UploadQueryString
End If

' boolean to abort record edit
MM_abortEdit = false

' query string to execute
MM_editQuery = ""
%>
<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")

Conn.Open DSN

if request.form("update") <> "" then
strSQL = "update hej set  felt51 = '"&request.form("felt51")&"' where id = " & request.querystring("id")
set rs = Conn.execute(strSQL)
response.write("<center><b>dd er nu opdateret")

end if
strSQL = "Select * From hej Where Id = " & Request.Querystring("id")
Set rs = Conn.Execute(strSQL)


%>
<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errrsComment=''',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errrsComment+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') {
        if (isNaN(val)) errrsComment+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (val<min || max<val) errrsComment+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errrsComment += '- '+nm+' is required.\n'; }
  } if (errrsComment) alert('The following error(s) occurred:\n'+errrsComment);
  document.MM_returnValue = (errrsComment == '');
}

function checkFileUpload(form,extensions,requireUpload,sizeLimit,minWidth,minHeight,maxWidth,maxHeight,saveWidth,saveHeight) { //v2.09
  document.MM_returnValue = true;
  for (var i = 0; i<form.elements.length; i++) {
    field = form.elements[i];
    if (field.type.toUpperCase() != 'FILE') continue;
    checkOneFileUpload(field,extensions,requireUpload,sizeLimit,minWidth,minHeight,maxWidth,maxHeight,saveWidth,saveHeight);
} }

function checkOneFileUpload(field,extensions,requireUpload,sizeLimit,minWidth,minHeight,maxWidth,maxHeight,saveWidth,saveHeight) { //v2.09
  document.MM_returnValue = true;
  if (extensions != '') var re = new RegExp("\.(" + extensions.replace(/,/gi,"|").replace(/\s/gi,"") + ")$","i");
    if (field.value == '') {
      if (requireUpload) {alert('File is required!');document.MM_returnValue = false;field.focus();return;}
    } else {
      if(extensions != '' && !re.test(field.value)) {
        alert('This file type is not allowed for uploading.\nOnly the following file extensions are allowed: ' + extensions + '.\nPlease select another file and try again.');
        document.MM_returnValue = false;field.focus();return;
      }
    document.PU_uploadForm = field.form;
    re = new RegExp(".(gif|jpg|png|bmp|jpeg|doc|pdf|xls)$","i");
    if(re.test(field.value) && (sizeLimit != '' || minWidth != '' || minHeight != '' || maxWidth != '' || maxHeight != '' || saveWidth != '' || saveHeight != '')) {
      checkImageDimensions(field,sizeLimit,minWidth,minHeight,maxWidth,maxHeight,saveWidth,saveHeight);
    } }
}

function showImageDimensions(fieldImg) { //v2.09
  var isNS6 = (!document.all && document.getElementById ? true : false);
  var img = (fieldImg && !isNS6 ? fieldImg : this);
  if (img.width > 0 && img.height > 0) {
  if ((img.minWidth != '' && img.minWidth > img.width) || (img.minHeight != '' && img.minHeight > img.height)) {
    alert('Uploaded Image is too small!\nShould be at least ' + img.minWidth + ' x ' + img.minHeight); return;}
  if ((img.maxWidth != '' && img.width > img.maxWidth) || (img.maxHeight != '' && img.height > img.maxHeight)) {
    alert('Uploaded Image is too big!\nShould be max ' + img.maxWidth + ' x ' + img.maxHeight); return;}
  if (img.sizeLimit != '' && img.fileSize > img.sizeLimit) {
    alert('Uploaded Image File Size is too big!\nShould be max ' + (img.sizeLimit/1024) + ' KBytes'); return;}
  if (img.saveWidth != '') document.PU_uploadForm[img.saveWidth].value = img.width;
  if (img.saveHeight != '') document.PU_uploadForm[img.saveHeight].value = img.height;
  document.MM_returnValue = true;
} }

function checkImageDimensions(field,sizeL,minW,minH,maxW,maxH,saveW,saveH) { //v2.09
  if (!document.layers) {
    var isNS6 = (!document.all && document.getElementById ? true : false);
    document.MM_returnValue = false; var imgURL = 'file:///' + field.value.replace(/\\/gi,'/').replace(/:/gi,'|').replace(/"/gi,'').replace(/^\//,'');
    if (!field.gp_img || (field.gp_img && field.gp_img.src != imgURL) || isNS6) {field.gp_img = new Image();
          with (field) {gp_img.sizeLimit = sizeL*1024; gp_img.minWidth = minW; gp_img.minHeight = minH; gp_img.maxWidth = maxW; gp_img.maxHeight = maxH;
        gp_img.saveWidth = saveW; gp_img.saveHeight = saveH; gp_img.onload = showImageDimensions; gp_img.src = imgURL; }
    } else showImageDimensions(field.gp_img);}
}
//-->
</script>
Avatar billede l_otto Nybegynder
13. februar 2004 - 13:44 #22
hej E.

jeg har brug for hjælp.......:-) på denne her..
Avatar billede eagleeye Praktikant
13. februar 2004 - 16:21 #23
der står linje nummer så det skulle vel være muligt at finde:
/idebank/info.asp, line 253

Bruger du en upload komponent eller et upload script uden komponent??
Avatar billede l_otto Nybegynder
14. februar 2004 - 09:27 #24
den henviser til denne her:
<SCRIPT LANGUAGE="VBSCRIPT" RUNAT="SERVER">
'*** Pure ASP File Upload -----------------------------------------------------
' Copyright 2001-2002 (c) George Petrov, www.UDzone.com
'
' Script partially based on code from Philippe Collignon
'              (http://www.asptoday.com/articles/20000316.htm)
'
' New features added:
'  * Fast file save with ADO 2.5 stream object
'  * new file handling, wrapper functions, extra error checking
'  * UltraDev Server Behavior extension
'  * Progress bars, file limit checking, file type checking, file existence checking
'  * Support for UltraDev Insert/Update Server Behavior
'  * and much more ...
'
' Version: 2.0.9
'------------------------------------------------------------------------------
Function getPureUploadVersion()
  getPureUploadVersion = 2.09
End Function

Sub BuildUploadRequest(RequestBin,UploadDirectory,storeType,sizeLimit,nameConflict)

  Dim PosBeg, PosEnd, checkADOConn, AdoVersion, Length, boundary, boundaryPos, Pos
  Dim PosFile, Name, PosBound, FileName, ContentType, Value, ValueBeg, ValueEnd, ValueLen
 
  'Get the boundary
  PosBeg = 1
  PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
  if PosEnd = 0 then
    Response.Write "<b>Form was submitted with no ENCTYPE=""multipart/form-data""</b><br>"
    Response.Write "Please correct and <A HREF=""java script:history.back(1)"">try again</a>"   
    Response.End
  end if
  'Check ADO Version
    set checkADOConn = Server.CreateObject("ADODB.Connection")
  on error resume next
    adoVersion = CSng(checkADOConn.Version)
    if err then
        adoVersion = Replace(checkADOConn.Version,".",",") 
        adoVersion = CSng(adoVersion)
    end if   
      err.clear
  on error goto 0   
    set checkADOConn = Nothing
    if adoVersion < 2.5 then
    Response.Write "<b>You don't have ADO 2.5 installed on the server.</b><br>"
    Response.Write "The File Upload extension needs ADO 2.5 or greater to run properly.<br>"
    Response.Write "You can download the latest MDAC (ADO is included) from <a href=""www.microsoft.com/data"">www.microsoft.com/data</a><br>"
    Response.End
    end if       
  'Check content length if needed
    Length = CLng(Request.ServerVariables("HTTP_Content_Length")) 'Get Content-Length header
    If "" & sizeLimit <> "" Then
    sizeLimit = CLng(sizeLimit) * 1024
    If Length > sizeLimit Then
      Request.BinaryRead (Length)
      Response.Write "Upload size " & FormatNumber(Length, 0) & "B exceeds limit of " & FormatNumber(sizeLimit, 0) & "B"
      Response.Write "Please correct and <A HREF=""java script:history.back(1)"">try again</a>"     
      Response.End
    End If
  End If
  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 = LCase(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))
      FileName = RemoveInvalidChars(Mid(FileName,InStrRev(FileName,"\")+1))
      '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 = FileName
      ValueBeg = PosBeg-1
      ValueLen = 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))
      ValueBeg = 0
      ValueEnd = 0
    End If
    'Add content to dictionary object
    UploadControl.Add "Value" , Value   
    UploadControl.Add "ValueBeg" , ValueBeg
    UploadControl.Add "ValueLen" , ValueLen   
    'Add dictionary object to main dictionary
    if UploadRequest.Exists(name) then
      UploadRequest(name).Item("Value") = UploadRequest(name).Item("Value") & "," & Value
    else
      UploadRequest.Add name, UploadControl
    end if   
    'Loop to next object
    BoundaryPos=InstrB(BoundaryPos+LenB(boundary),RequestBin,boundary)
  Loop

  Dim GP_keys, GP_i, GP_curKey, GP_value, GP_valueBeg, GP_valueLen, GP_curPath, GP_FullPath
  Dim GP_CurFileName, GP_FullFileName, fso, GP_BegFolder, GP_RelFolder, GP_FileExist, Begin_Name_Num
  Dim orgUploadDirectory
   
  if InStr(UploadDirectory,"""") > 0 then
    on error resume next
    orgUploadDirectory = UploadDirectory
    UploadDirectory = eval(UploadDirectory) 
    if err then
      Response.Write "<B>Upload folder is invalid</B><br><br>"     
      Response.Write "Upload Folder: " & Trim(orgUploadDirectory) & "<br>"
      Response.Write "Please correct and <A HREF=""java script:history.back(1)"">try again</a>"
          err.clear
        response.End
    end if   
    on error goto 0
  end if 
 
  GP_keys = UploadRequest.Keys
  for GP_i = 0 to UploadRequest.Count - 1
    GP_curKey = GP_keys(GP_i)
    'Save all uploaded files
    if UploadRequest.Item(GP_curKey).Item("FileName") <> "" then
      GP_value = UploadRequest.Item(GP_curKey).Item("Value")
      GP_valueBeg = UploadRequest.Item(GP_curKey).Item("ValueBeg")
      GP_valueLen = UploadRequest.Item(GP_curKey).Item("ValueLen")

      'Get the path
      if InStr(UploadDirectory,"\") > 0 then
        GP_curPath = UploadDirectory
        if Mid(GP_curPath,Len(GP_curPath),1)  <> "\" then
          GP_curPath = GP_curPath & "\"
        end if       
        GP_FullPath = GP_curPath
      else
        GP_curPath = Request.ServerVariables("PATH_INFO")
        GP_curPath = Trim(Mid(GP_curPath,1,InStrRev(GP_curPath,"/")) & UploadDirectory)
        if Mid(GP_curPath,Len(GP_curPath),1)  <> "/" then
          GP_curPath = GP_curPath & "/"
        end if
        GP_FullPath = Trim(Server.mappath(GP_curPath))
      end if

     
      if GP_valueLen = 0 then
        Response.Write "<B>An error has occured saving uploaded file!</B><br><br>"
        Response.Write "Filename: " & Trim(GP_curPath) & UploadRequest.Item(GP_curKey).Item("FileName") & "<br>"
        Response.Write "File does not exists or is empty.<br>"
        Response.Write "Please correct and <A HREF=""java script:history.back(1)"">try again</a>"
            response.End
        end if
     
      'Create a Stream instance
      Dim GP_strm1, GP_strm2
      Set GP_strm1 = Server.CreateObject("ADODB.Stream")
      Set GP_strm2 = Server.CreateObject("ADODB.Stream")
     
      'Open the stream
      GP_strm1.Open
      GP_strm1.Type = 1 'Binary
      GP_strm2.Open
      GP_strm2.Type = 1 'Binary
       
      GP_strm1.Write RequestBin
      GP_strm1.Position = GP_ValueBeg
      GP_strm1.CopyTo GP_strm2,GP_ValueLen
   
      'Create and Write to a File
      GP_CurFileName = UploadRequest.Item(GP_curKey).Item("FileName")     
      GP_FullFileName = GP_FullPath & "\" & GP_CurFileName
      Set fso = CreateObject("Scripting.FileSystemObject")
      'Check if the folder exist
      If NOT fso.FolderExists(GP_FullPath) Then
        GP_BegFolder = InStr(GP_FullPath,"\")
        while GP_begFolder > 0
          GP_RelFolder = Mid(GP_FullPath,1,GP_BegFolder-1)
          If NOT fso.FolderExists(GP_RelFolder) Then 
            fso.CreateFolder(GP_RelFolder)
          end if         
          GP_BegFolder = InStr(GP_BegFolder+1,GP_FullPath,"\")         
        wend
        If NOT fso.FolderExists(GP_FullPath) Then       
          fso.CreateFolder(GP_FullPath)       
        end if 
      end if
      'Check if the file already exist
      GP_FileExist = false
      If fso.FileExists(GP_FullFileName) Then
        GP_FileExist = true
      End If     
      if nameConflict = "error" and GP_FileExist then
        Response.Write "<B>File already exists!</B><br><br>"
        Response.Write "Please correct and <A HREF=""java script:history.back(1)"">try again</a>"
                GP_strm1.Close
                GP_strm2.Close
            response.End
      end if
      if ((nameConflict = "over" or nameConflict = "uniq") and GP_FileExist) or (NOT GP_FileExist) then
        if nameConflict = "uniq" and GP_FileExist then
          Begin_Name_Num = 0
          while GP_FileExist   
            Begin_Name_Num = Begin_Name_Num + 1
            GP_FullFileName = Trim(GP_FullPath)& "\" & fso.GetBaseName(GP_CurFileName) & "_" & Begin_Name_Num & "." & fso.GetExtensionName(GP_CurFileName)
            GP_FileExist = fso.FileExists(GP_FullFileName)
          wend 
          UploadRequest.Item(GP_curKey).Item("FileName") = fso.GetBaseName(GP_CurFileName) & "_" & Begin_Name_Num & "." & fso.GetExtensionName(GP_CurFileName)
                    UploadRequest.Item(GP_curKey).Item("Value") = UploadRequest.Item(GP_curKey).Item("FileName")
        end if
        on error resume next
        GP_strm2.SaveToFile GP_FullFileName,2
        if err then
          Response.Write "<B>An error has occured saving uploaded file!</B><br><br>"
          Response.Write "Filename: " & Trim(GP_curPath) & UploadRequest.Item(GP_curKey).Item("FileName") & "<br>"
          Response.Write "Maybe the destination directory does not exist, or you don't have write permission.<br>"
          Response.Write "Please correct and <A HREF=""java script:history.back(1)"">try again</a>"
              err.clear
                  GP_strm1.Close
                  GP_strm2.Close
              response.End
          end if
              GP_strm1.Close
              GP_strm2.Close
              if storeType = "path" then
                  UploadRequest.Item(GP_curKey).Item("Value") = GP_curPath & UploadRequest.Item(GP_curKey).Item("Value")
              end if
        on error goto 0
      end if
    end if
  next

End Sub

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

'Byte string to string conversion (with double-byte support now)
Function getString(StringBin)
  Dim intCount,get1Byte
  getString =""
  For intCount = 1 to LenB(StringBin)
    get1Byte = MidB(StringBin,intCount,1)
    getString = getString & chr(AscB(get1Byte))
  Next
End Function

Function UploadFormRequest(name)
  Dim keyName
  keyName = LCase(name)
  if IsObject(UploadRequest) then
    if UploadRequest.Exists(keyName) then
      if UploadRequest.Item(keyName).Exists("Value") then
        UploadFormRequest = UploadRequest.Item(keyName).Item("Value")
      end if 
    end if 
  end if 
End Function

Function RemoveInvalidChars(str)
  Dim newStr, ci, curChar
  for ci = 1 to Len(str)
    curChar = Asc(LCase(Mid(str,ci,1)))
    if curChar = 95 or curChar = 45 or curChar = 46 or (curChar >= 97 and curChar <= 122) or (curChar >= 48 and curChar <= 57) then
      newStr = newStr & Mid(str,ci,1)
    end if
  next
  RemoveInvalidChars = newStr
End Function

Sub PureUploadSetup()
  UploadQueryString = Replace(Request.QueryString,"GP_upload=true","")
  if mid(UploadQueryString,1,1) = "&" then
      UploadQueryString = Mid(UploadQueryString,2)
  end if
  GP_uploadAction = CStr(Request.ServerVariables("URL")) & "?GP_upload=true"
  If (Request.QueryString <> "") Then 
    if UploadQueryString <> "" then
        GP_uploadAction = GP_uploadAction & "&" & UploadQueryString
    end if
  End If
End Sub

Function FixFieldsForUpload(GP_fieldsStr, GP_columnsStr)
  Dim GP_counter, GP_Fields, GP_Columns, GP_FieldName, GP_FieldValue, GP_CurFileName, GP_CurContentType

  GP_Fields = Split(GP_fieldsStr, "|")
  GP_Columns = Split(GP_columnsStr, "|")
  GP_fieldsStr = ""
  ' Get the form values
  For GP_counter = LBound(GP_Fields) To UBound(GP_Fields) Step 2
    GP_FieldName = LCase(GP_Fields(GP_counter))
    GP_FieldValue = GP_Fields(GP_counter+1)
      if UploadRequest.Exists(GP_FieldName) then
      GP_CurFileName = UploadRequest.Item(GP_FieldName).Item("FileName")
      GP_CurContentType = UploadRequest.Item(GP_FieldName).Item("ContentType")
      else 
        GP_CurFileName = ""
        GP_CurContentType = ""
      end if   
    if (GP_CurFileName = "" and GP_CurContentType = "") or (GP_CurFileName <> "" and GP_CurContentType <> "") then
      GP_fieldsStr = GP_fieldsStr & GP_FieldName & "|" & GP_FieldValue & "|"
    end if
  Next
  if GP_fieldsStr <> "" then
    GP_fieldsStr = Mid(GP_fieldsStr,1,Len(GP_fieldsStr)-1)
  else 
    Response.Write "<B>An error has occured during record update!</B><br><br>"
    Response.Write "There are no fields to update ...<br>"
    Response.Write "If the file upload field is the only field on your form, you should make it required.<br>"
    Response.Write "Please correct and <A HREF=""java script:history.back(1)"">try again</a>"
    Response.End
  end if
 
  FixFieldsForUpload = GP_fieldsStr   
End Function

Function FixColumnsForUpload(GP_fieldsStr, GP_columnsStr)
  Dim GP_counter, GP_Fields, GP_Columns, GP_FieldName, GP_ColumnName, GP_ColumnValue,GP_CurFileName, GP_CurContentType

  GP_Fields = Split(GP_fieldsStr, "|")
  GP_Columns = Split(GP_columnsStr, "|")
  GP_columnsStr = ""
  ' Get the form values
  For GP_counter = LBound(GP_Fields) To UBound(GP_Fields) Step 2
    GP_FieldName = LCase(GP_Fields(GP_counter)) 
    GP_ColumnName = GP_Columns(GP_counter) 
    GP_ColumnValue = GP_Columns(GP_counter+1)
      if UploadRequest.Exists(GP_FieldName) then
        GP_CurFileName = UploadRequest.Item(GP_FieldName).Item("FileName")
        GP_CurContentType = UploadRequest.Item(GP_FieldName).Item("ContentType")     
      else 
        GP_CurFileName = ""
        GP_CurContentType = ""
      end if 
    if (GP_CurFileName = "" and GP_CurContentType = "") or (GP_CurFileName <> "" and GP_CurContentType <> "") then
      GP_columnsStr = GP_columnsStr & GP_ColumnName & "|" & GP_ColumnValue & "|"
    end if
  Next
  if GP_columnsStr <> "" then
    GP_columnsStr = Mid(GP_columnsStr,1,Len(GP_columnsStr)-1)   
  end if
  FixColumnsForUpload = GP_columnsStr
End Function

</SCRIPT>
Avatar billede eagleeye Praktikant
14. februar 2004 - 10:28 #25
Det var en lang kode, jeg kan umiddelbart ikke se den kalder Request.Form, men det skulle den heller ikke hvis der er upload scriptet.

Cannot use Request.Form
/idebank/info.asp, line 253
Cannot use Request.Form collection after calling BinaryRead.

Fejlen betyder der er lavet et klad til Request.Form efter man har kaldt Request.BinaryRead


Men i det kode du har vist:  12/02-2004 13:59:09
Kaldes .BinaryRead i straten af koden:
RequestBin = Request.BinaryRead(Request.TotalBytes)

Og senere har du request.form:
if request.form("update") <> "" then
strSQL = "update hej set  felt51 = '"&request.form("felt51")&"' where id = " & request.querystring("id")
set rs = Conn.execute(strSQL)


Der skal du bruge upload scripts melighed for at hendte form-item, jeg kender ikke det upload scritp men de fleste har en funktion man kalder præsis som man kalder Request.Form
Avatar billede l_otto Nybegynder
15. februar 2004 - 09:24 #26
damm den er ikke nem... har du ikke noget kode jeg kan bruge? der virker til at update ?
Avatar billede l_otto Nybegynder
20. februar 2004 - 14:14 #27
hej E... slutter vi den her =?
Avatar billede eagleeye Praktikant
21. februar 2004 - 22:18 #28
Det findes forskellige upload komponenter man kan bruge. Hvis du har adgang til det? Eller må du prøve at lave upload og resten af koden hver for sig?
Avatar billede l_otto Nybegynder
23. februar 2004 - 15:21 #29
hej E..

kommer du med et svar :-)
Avatar billede eagleeye Praktikant
23. februar 2004 - 17:32 #30
ok :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Netcompany A/S

IT Consultant

Politiets Efterretningstjeneste

GenAI Specialist i PET

Riskpoint A/S (Riskpoint Solutions Limited)

Senior Developer