Celebrate National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

slow file upload and an error

Posted on 2004-09-17
9
Medium Priority
?
174 Views
Last Modified: 2013-12-24
Hi, I have made a page where users can upload some word files,
the first problem is that the page is quit slow! is there reason for that.
The second problem is that if the user has the word file open (they can only upload word files) the server gives an error! how can one deal with that, other than to warn the users not to have their files open?
thanks
0
Comment
Question by:MMsabry
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
9 Comments
 

Author Comment

by:MMsabry
ID: 12090145
Also, in the next step, i.e. after the file has been uploaded there is a query to insert some values in an sql db, every once in a while, an error happens,
the error is : invalide synthax near ')"
here are the queries

<cftransaction>
      
      <cftry>
            <cflock type="readonly" scope="session" timeout="50" throwontimeout="no">
                  <cfset Abstr = Duplicate(Session.PartAct.Abst)>
                  <cfset Pinfo = Duplicate(Session.PartAct.Pinfo)>
            </cflock>
                  <cfquery name="Abst" datasource="#request.MyDSN#" username="#request.myusername#" password="#request.Mypassword#">
                        INSERT INTO Abst (Title, Location)
                        VALUES (<cfqueryparam cfsqltype="cf_sql_varchar" value="#Abstr[4]#">,
                                    <cfqueryparam cfsqltype="cf_sql_varchar"
                                    value="files\#form.filename#">)
                  </cfquery>
                  <cfquery name="AbstID" datasource="#request.MyDSN#" username="#request.myusername#" password="#request.Mypassword#">
                        SELECT Title, Abst_ID as ID FROM Abst
                        WHERE Title=<cfqueryparam cfsqltype="cf_sql_varchar" value="#Abstr[4]#">
                  </cfquery>
                  <cfquery name="TypeID" datasource="#request.MyDSN#" username="#request.myusername#" password="#request.Mypassword#">
                        SELECT Type, Type_ID AS TID FROM Type
                        WHERE Type=<cfqueryparam cfsqltype="cf_sql_varchar" value="#Abstr[2]#">
                  </cfquery>
                  <cfquery name="TopicsID" datasource="#request.MyDSN#" username="#request.myusername#" password="#request.Mypassword#">
                        SELECT Topic, Topic_ID As TOID FROM Topics
                        WHERE Topic=<cfqueryparam cfsqltype="cf_sql_varchar" value="#Abstr[3]#">
                  </cfquery>
                  <cfquery name="Insert1" datasource="#request.MyDSN#" username="#request.myusername#" password="#request.Mypassword#">
                        Insert into Cont (P_ID, Abst_ID, Type_ID, Topic_ID)
                        VALUES (#Pinfo[5]#,#AbstID.ID#,#TypeID.TID#,#TopicsID.TOID#)
                  </cfquery>
                  <cfquery name="Insert2" datasource="#request.MyDSN#" username="#request.myusername#" password="#request.Mypassword#">
                        Insert into Abst_Status  (Abst_ID)
                        VALUES (#AbstID.ID#)
                  </cfquery>
            <cfset SendEmail = 1>
      <cfoutput>
         some html
          </cfoutput>
           <cfcatch>
                 <cfoutput> some html</cfoutput>
            </cfcatch>
        </cftry>
       </cftransaction>
0
 
LVL 21

Accepted Solution

by:
pinaldave earned 800 total points
ID: 12090221
Hi MMsabry,

The reason for invalid entry around ) can be
1) there is null values are passed
2) the param is not properly scoped like variables.varname or url.varname or smoething
or may be something...

regarding slow as you know there can be many reasons like ram, server or may be it is slow due to any reason... internet or anything... so I do not see that as some big problem...

Regards,
---Pinal
0
 
LVL 25

Assisted Solution

by:James Rodgers
James Rodgers earned 400 total points
ID: 12090688
when the error is generated is therea line given? what is the code from that line?
you also stopped using cfqueryparam in your statements, you should always use this especially when using an insert statement, or at least be consistent in using it
you have a table named type with a column named type, type can be a key/reserved word - not a solution to your problem but somrthing to be aware of when naming vars, objects etc.
0
Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

 
LVL 17

Expert Comment

by:anandkp
ID: 12092152
i guess the way ur doing is not right ...

I suppose u wld wanna do FILE.SERVERFILE to insert the file name of the uploade file in the DB [after using CFFILE]

refer http://www.experts-exchange.com/Web/WebDevSoftware/ColdFusion/Q_20663901.html & lemme know ...
0
 

Author Comment

by:MMsabry
ID: 12095839
Jester_48,
The line that is give is number 2, and line 2 contains the code to resterict access to the page.!!
yes i also stopped using cfqueryparam, bec. all the values in this case are id numbers returned from other queries, so they info already on my db.

anandkp,
I do not understand your comment, since I do what you indicated, these queries are after the file has been uploaded.

also no one has gotten around to answer the question about file upload error when the word file is open, and sometimes it is a word file that is to be uploaded but it still gives the error that this is not a word file!
thanks
0
 
LVL 21

Expert Comment

by:pinaldave
ID: 12096023
hih, what is the code of uploading...
are you having some problem due to mime type or something ...?
0
 

Author Comment

by:MMsabry
ID: 12096275
this the code for uploading
<cffile accept="application/msword" action="upload" destination="C:\CFusionMX\wwwroot\site\Abstracts\" filefield="form.userfile" nameconflict="overwrite">

forget about the query problem, i solved it there was a typo in the values in the db, so in this sense Pinal was right, it was getting a null value.

now the problem i get with the upload is the following:
1- if the file to be uploaded is open in the application (in this case MS word) it throughs an error
2-once in a while, with certain files (i made sure that they are ms word) it insists that they are not.
0
 
LVL 21

Expert Comment

by:pinaldave
ID: 12096345

I think Q 1) is going to be like that. That is the system behaviour and property.
Try this mime types also for Q 2)
application/x-msdownload
Also some time Windows opens the file as that file could be opened with words but actually that can be any files adn we need specific mime types for them...
here is the list of some of the word related mime types try them....
http://www.utoronto.ca/ian/books/html4ed/appb/mimetype.html

Regards,
---Pinal
0
 

Author Comment

by:MMsabry
ID: 12096543
Pinaldave,
application/x-msdownload did not work at all, even for the files that used to work before,
the link you provided is very nice but not in this case, since they also indicate that for ms word, i would only use "application/msword"!
so any solutions!!
0

Featured Post

Enroll in September's Course of the Month

This month’s featured course covers 16 hours of training in installation, management, and deployment of VMware vSphere virtualization environments. It's free for Premium Members, Team Accounts, and Qualified Experts!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Have you ever sent email via ColdFusion and thought of tracking this mail to capture the exact date and time when the message was opened ?  If yes, then this article is for you ! First we need a table user_email with columns user_id , email , sub…
Lease-to-own eliminates the expenditure of hardware replacement and allows you to pay off the server over time. Usually, this is much cheaper than leasing servers. Think of lease-to-own as credit without interest.
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question