September 06, 2008
For ColdFusion hosting try HostMySite.com. |
Home /
Groups /
ColdFusion Talk (CF-Talk)
Strange bug in IE 5
Hi!Macarie Neculai 04/11/03 10:36 A Hi Macarie,Dain Anderson 04/11/03 01:11 P Hi Dain,Macarie Neculai 04/11/03 01:37 P Usually the double entry happens if you have 2 fields named the same,Philip Arnold 04/12/03 08:06 A Philip Arnold wrote:Macarie Neculai 04/12/03 08:32 A > Yes, I know that. But I'm *very* sure that I have only onePhilip Arnold 04/12/03 08:48 A Hi!Macarie Neculai 04/12/03 09:02 A >I have a very strange problem for some time. IE 5 seems to be submittingKay Smoljak 04/14/03 08:38 A Thanks for the info.Neculai Macarie 04/14/03 10:09 A I suspect it may be having an issue with the fact that you have a form fieldS. Isaac Dealey 04/12/03 11:57 A > I suspect it may be having an issue with the fact that you have a formMacarie Neculai 04/12/03 12:31 P > You have a very good point here. Having a field namedS. Isaac Dealey 04/12/03 06:41 P > > You have a very good point here. Having a field namedMacarie Neculai 04/13/03 04:35 A >> > You have a very good point here. Having a field namedS. Isaac Dealey 04/13/03 09:48 A We are experiencing a similar bug in one of our apps.Neil Middleton 04/14/03 11:15 A For those that care, I think I have solved the problem.Neil Middleton 04/15/03 07:31 A Are you kidding me? I don't _think_ I've seen this behaviour (having an allwebguy 04/15/03 07:45 A I've never heard of an issue like this, and I use variables in my actionDave Sueltenfuss 04/15/03 07:47 A As far as I can see it only applies to all IE browsers on Windows 98.Neil Middleton 04/15/03 08:07 A > As far as I can see it only applies to all IE browsers on Windows 98.Neculai Macarie 04/15/03 08:15 A possibly, I haven't looked into that much. All I know is how to get roundNeil Middleton 04/15/03 08:20 A
Author: Macarie Neculai
Hi! I have a very strange problem for some time. IE 5 seems to be submitting some form fields twice in some cases. When the form is quite heavy (with lots of image uploads) some fields are present twice in the stream that goes from the browser to the server. I assembled a test-case at: http://server10.storecom.com/test/. To see the behaviour please click on index_frame_coldfusion.html. Then click on the submit button from the top of the page. On the action page I simply did a <cfdump var="#form#"> so that form variables are displayed. Sometimes the first form field will be action=edit_hotel and sometimes it will be action=edit_hotel,edit_hotel. The bug is not present in every case so please try going back and clicking on submit button again a few times. In the zipped file test.zip you will find all the files needed for testing this. What I found: 1. this affects only IE 5 on Win2k and Win98 as far as I know so it must be checked with IE5. 2. the bug appears when there are frames involved. Try clicking on form_coldfusion.html and the submission will work. 3. the bug does not appear when the action page of the form is a php script, only when it's a cfm script (the file index_frame_php.html loads a file that has a ). 4. I attached some captures made on a internal network that show IE submitting twice (cf_post1.txt at line 417 takes the field list again) I tested this with Apache 1.3.27 on Win2k, Apache2.0.43 on Win2k, Apache 1.3.24 on Debian.... Is this a known bug in IE5? Is there a workaround ? <mack />
Author: Dain Anderson
Hi Macarie, That's an interesting bug(?). I suppose one way to get around it in your CFM page is to use: <CFSET Action = "#GetToken(FORM.ACTION, 1, ",")#"> This will grab the first item if there happens to be two values. GetToken() won't throw an error if the string isn't tokenized, so it's pretty safe in your situation. Hope that helps, -Dain ----- Original Message ----- From: "Macarie Neculai" <macarie.neculai@nexc-corp.com> To: "CF-Talk" <cf-talk@houseoffusion.com> Sent: Friday, April 11, 2003 10:31 AM Subject: Strange bug in IE 5 > Hi! > > I have a very strange problem for some time. IE 5 seems to be submitting > some form fields twice in some cases. When the form is quite heavy (with > lots of image uploads) some fields are present twice in the stream that goes be > checked with IE5. > 2. the bug appears when there are frames involved. Try clicking on > form_coldfusion.html and the submission will work. > 3. the bug does not appear when the action page of the form is a php script, > only when it's a cfm script (the file index_frame_php.html loads a file that
Author: Macarie Neculai
Hi Dain, 1. Could you verify this (this is mostly important to my sanity) ? 2. It doesn't help because almost all the fields from the form are affected by this "doubling" and some might legaly contain a "," character, therefore I cannot extract the first part of the list. What's more interesting is that on the same form there are some charactes I investigated a little more and found out that even if I rename the ColdFusion files (make ColdFusion process files with extension .phpl) the bug still appears. Also it seems to "work" with MX (I only tested on Windows). <mack /> ----- Original Message ----- From: "Dain Anderson" <dain_anderson@terradotta.com> To: "CF-Talk" <cf-talk@houseoffusion.com> Sent: Friday, April 11, 2003 8:07 PM Subject: Re: Strange bug in IE 5 > Hi Macarie, > > That's an interesting bug(?). I suppose one way to get around it in your CFM > page is to use: > > <CFSET Action = "#GetToken(FORM.ACTION, 1, ",")#"> > > This will grab the first item if there happens to be two values. GetToken() the > > behaviour please click on index_frame_coldfusion.html. Then click on the > > submit button from the top of the page. On the action page I simply did a > > <cfdump var="#form#"> so that form variables are displayed. Sometimes the clicking > > on submit button again a few times. > > > > In the zipped file test.zip you will find all the files needed for testing
Author: Philip Arnold
Usually the double entry happens if you have 2 fields named the same, and you're only expecting one Have a look at the source code and see if you can find an extra copy of "action"
Author: Macarie Neculai
Philip Arnold wrote: > Usually the double entry happens if you have 2 fields named the same, > and you're only expecting one > > Have a look at the source code and see if you can find an extra copy of > "action" Yes, I know that. But I'm *very* sure that I have only one "action" field (you can check the source code -- I packed all the files in the archive). You can check the cf_post1.txt file in the archive and see that IE really starts sending the fields twice (it's aroung line 417 in that file when the action field is sent *again*). The problem appears in IE without modifying anything in the source code. In 80% of the cases the bug appears when the processing is done by CF, but does not appear when php is involved. I would be quite easy to check this with (only with a IE5 browser): http://server10.storecom.com/test/index_frame_coldfusion.html , press submit a couple of times and you will see that sometimes the action field gets "doubled", sometimes not, without any modifications to the source code (the form file is a html file). Thanks for your time. <mack />
Author: Philip Arnold
> Yes, I know that. But I'm *very* sure that I have only one We run IE6 here, so I can't replicate the issue If it replicates one field, it could well replicate others Are you running all of the latest WindowsUpdates for IE? I know there were several issues, not sure if this is one of them
Author: Macarie Neculai
Hi! ----- Original Message ----- From: "Philip Arnold" <parnold@ruwebby.com> To: "CF-Talk" <cf-talk@houseoffusion.com> Sent: Saturday, April 12, 2003 3:44 PM Subject: RE: Strange bug in IE 5 Yes, you are correct: it doubles other fields as well (it starts sending them all over again). This is an fragment from the capture file (please observe that "action" *and* "g_action"appear twice in the file -- the file is cf_post1.txt in the archive): POST http://site.internal.com/1/display.cfm HTTP/1.0 Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */* Referer: http://site.internal.com/1/form_coldfusion.html Accept-Language: en-us Content-Type: multipart/form-data; boundary=---------------------------7d3da1f130094 Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0) Host: site.internal.com Content-Length: 26353 Proxy-Connection: Keep-Alive Pragma: no-cache -----------------------------7d3da1f130094 Content-Disposition: form-data; name="action" edit_hotel -----------------------------7d3da1f130094 Content-Disposition: form-data; name="g_action" cmd_verify -----------------------------7d3da1f130094 Content-Disposition: form-data; name="id" ............................................ ............................................ -----------------------------7d3da1f130094 Content-Disposition: form-data; name="f_distance_de" 2200 m -----------------------------7d3da1f130094 Content-Disposition: form-data; name="f_map"; filename="" Content-Type: application/octet-stream -----------------------------7d3da1f130094 Content-Disposition: form-data; name="action" edit_hotel -----------------------------7d3da1f130094 Content-Disposition: form-data; name="g_action" cmd_verify -----------------------------7d3da1f130094 Content-Disposition: form-data; name="id" 34 > > Are you running all of the latest WindowsUpdates for IE? I know there > were several issues, not sure if this is one of them I'm runninng IE5 on Win2k with SP3 freshly installed (5.00.3502.1000). I have not found info about this bug on the Microsoft site, although I posted a message on the newsgroups and sent them an e-mail. Thanks. <mack />
Author: Kay Smoljak
>I have a very strange problem for some time. IE 5 seems to be submitting >some form fields twice in some cases. I came across this exact same behaviour. It only occured in IE5 on Windows 98, in a Fusebox application, using cfmodule to redisplay a form after server-side validation. The fix in my case was to rearrange the way I was checking the value of one of the form variables, but I'm not exactly sure what was causing that or why it fixed the problem (and to make that even more vague I don't have access to the code in question anymore). Probably not much help to you, except as confirmation that someone else has seen it before, and that it is something to do with IE5 and not your code, and that you can probably work around it somehow :) Good luck, Kay.
Author: Neculai Macarie
Thanks for the info. I would be very glad if you can elaborate a little because I'm also using Fusebox. I'm using custom server-side validation, but the testcase has nothing to do with this. I don't know if I mentioned this (maybe 5-10 times :-) ) but the same form works without problems with a PHP page. I see this bug only when the form is "heavy": a lot of file-uploads and text-area fields. It does not show it's ugly head in a normal situation. Thanks for your time, <mack /> > >I have a very strange problem for some time. IE 5 seems to be submitting > >some form fields twice in some cases. > > I came across this exact same behaviour. It only occured in IE5 on Windows 98, in a Fusebox application, using cfmodule to redisplay a form after server-side validation. The fix in my case was to rearrange the way I was checking the value of one of the form variables, but I'm not exactly sure what was causing that or why it fixed the problem (and to make that even more vague I don't have access to the code in question anymore). > > Probably not much help to you, except as confirmation that someone else has seen it before, and that it is something to do with IE5 and not your code, and that you can probably work around it somehow :) > > Good luck, > Kay.
Author: S. Isaac Dealey
I suspect it may be having an issue with the fact that you have a form field named "action". With just a straight html form this shouldn't be the case, so yes, it's probably an IE 5 bug, but "action" as a form field name is bad form anyway, so you might want to reconsider it. If you or anyone else ever try to implement javascript / dhtml on this form, the only way to reference form.action in the script and return the form's action attribute (a string) instead of the action field (an object), will be to change the capitalization of the field name. (which you may want to try to see if it helps your issue). But then you're using capitalization to distinguish between 2 entirely different items in your form which imho isn't good, especially if you're working with ColdFusion which is a case-insensitive language, a lot of CF developers (probably myself included) aren't likely to realize at first glance that the capitalization is important. hth s. isaac dealey 954-776-0046 new epoch http://www.turnkey.to lead architect, tapestry cms http://products.turnkey.to tapestry api is opensource http://www.turnkey.to/tapi certified advanced coldfusion 5 developer http://www.macromedia.com/v1/handlers/index.cfm?ID=21816
Author: Macarie Neculai
> I suspect it may be having an issue with the fact that you have a form field > named "action". With just a straight html form this shouldn't be the case, > so yes, it's probably an IE 5 bug, but "action" as a form field name is bad > form anyway, so you might want to reconsider it. If you or anyone else ever > try to implement javascript / dhtml on this form, the only way to reference > form.action in the script and return the form's action attribute (a string) > instead of the action field (an object), will be to change the > capitalization of the field name. (which you may want to try to see if it > helps your issue). But then you're using capitalization to distinguish > between 2 entirely different items in your form which imho isn't good, > especially if you're working with ColdFusion which is a case-insensitive > language, a lot of CF developers (probably myself included) aren't likely to > realize at first glance that the capitalization is important. > > hth You have a very good point here. Having a field named "action" obscures the "action" attribute of the form element. But somehow I never needed to access this field from Javascript and having to work on legacy code I kinda stuck with a hidden field called "action". But this might just change :). But, this does not solve my problem because action is not the only field affected. Here is a small fragment of the CFDUMP-ed FORM variables: ACTION = edit_hotel,edit_hotel F_CATEGORY = 3,3 F_CITY = Bad Gleichenberg,Bad Gleichenberg F_DISTANCE_DE = 2200 m,2200 m F_EMAIL = pension@3laenderblick.at,pension@3laenderblick.at PS: Could you duplicate this ? (It's particularly interesting because it *doesn't* work when the action page is a CF page and it *does* work when the action page is a PHP page). I find this problem very annoying because I could not fnd a workaround to it. Thanks for your time, <mack />
Author: S. Isaac Dealey
> You have a very good point here. Having a field named It actually might solve your problem. I'm not saying it _will_. But it might... You've already done a pretty good job of establishing that it's a bug in IE and being a bug it's possible that having the field named action in the form may be producing an anomoly in IE which duplicates _other_ fields in the form (including but not limited to the action field). hmmm... perhaps there's some anomolous interraction between IE and CF's http request header(?) interpreting. I would still try renaming the action field first and see if it has any effect, just because it should be easy to test even if it is a long-shot. But my uneducated gut feeling is that IE is sending an http request that's mangled in some odd way that PHP doesn't mind but that for some reason causes CF to see all the fields twice. I don't think IE is actually sending duplicates in this case. More like it's sending an odd non-printing character in just the right place, kind of like the IE-Mac file upload problem. I haven't tested the page(s) here because I don't have a working machine with IE 5 on it (just 6) and am packing for a move. I leave early Tuesday morning Greyhound for Dallas. Wish me luck. :) > Thanks for your time, > <mack /> welcome. :) s. isaac dealey 954-776-0046 new epoch http://www.turnkey.to lead architect, tapestry cms http://products.turnkey.to tapestry api is opensource http://www.turnkey.to/tapi certified advanced coldfusion 5 developer http://www.macromedia.com/v1/handlers/index.cfm?ID=21816
Author: Macarie Neculai
> > You have a very good point here. Having a field named I tried changing the field name to "action_test" or even removing it completly. It did not work. I did a few more tests and I found out that even CF with IIS5 has the same problem. My guess here would be that there is something wrong with the lower-level communication between IE5 and CF (MX is affected too). Do you have any thoughts on this? http > request header(?) interpreting. I would still try renaming the action field > first and see if it has any effect, just because it should be easy to test > even if it is a long-shot. But my uneducated gut feeling is that IE is > sending an http request that's mangled in some odd way that PHP doesn't mind > but that for some reason causes CF to see all the fields twice. I don't > think IE is actually sending duplicates in this case. More like it's sending > an odd non-printing character in just the right place, kind of like the > IE-Mac file upload problem. It is sending duplicates. Please take a look at the cf_post1.txt file which is a capture (with Ethereal) of the packets exchanged between IE and the server. On line 417 you can see that IE starts sending all the fields again. Interesting is the fact that the bug does not appear in 100% of the cases (appears in 70-80% of them). Sometimes it works as it should, sometimes fails. The biggest problem is that I cannot detect when it fails. > > I haven't tested the page(s) here because I don't have a working machine > with IE 5 on it (just 6) and am packing for a move. I leave early Tuesday > morning Greyhound for Dallas. Wish me luck. :) Good luck. Thank you for your time, <mack />
Author: S. Isaac Dealey
>> > You have a very good point here. Having a field named That's really interresting... I would really have expected a problem like this to only exist with Java -or- the pcode parser not both... hmmm... dunno... that only really leaves implementation of the actual http protocol doesn't it? ... unfortunately it sounds to me like MM support is your last best hope at this point... If it's a server bug (which it sounds like it might well be) then they shouldn't charge for support. I don't know what Ethereal is. In all honesty, http protocol, traces and the like are out of my realm of experience so I'm really sort of guessing there unfortunately. sorry I couldn't be more helpful. s. isaac dealey 954-776-0046 new epoch http://www.turnkey.to lead architect, tapestry cms http://products.turnkey.to tapestry api is opensource http://www.turnkey.to/tapi certified advanced coldfusion 5 developer http://www.macromedia.com/v1/handlers/index.cfm?ID=21816
Author: Neil Middleton
We are experiencing a similar bug in one of our apps. When submitting a form from Windows 98 the email sent from the server side is duplicated. All the code is sound and the server appears to be OK. We dont get duplicates from anywhere else.. Anyone have any ideas/resources on how we might be able to work round this. The MSDN has turned up nuthink. Neil > Probably not much help to you, except as confirmation that > someone else has seen it before, and that it is something to > do with IE5 and not your code, and that you can probably work > around it somehow :)
Author: Neil Middleton
For those that care, I think I have solved the problem. When you have a form that has vars placed not only in the form but also in the action e.g: <form action="control.cfm?var1=x" method="POST"> <input type="text" name="var2" value=""> </form> Windows 98 appears to do the expected POST request followed by a GET (I would assume due to the action of the form being of GET format) Changing the form to: <form action="control.cfm" method="POST"> <input type="text" name="var2" value=""> <input type="hidden" name="var1" value="x"> </form> Fixes this. Hope this helps somewhat with the other related problems Neil > When submitting a form from Windows 98 the email sent from > the server side > is duplicated. All the code is sound and the server appears > to be OK. We > dont get duplicates from anywhere else..
Author: webguy
Are you kidding me? I don't _think_ I've seen this behaviour (having an all you know is wrong - moment) Can anyone confirm? Sure this is not a cache issue? Thanks WG
Author: Dave Sueltenfuss
I've never heard of an issue like this, and I use variables in my action pages all the time Dave Are you kidding me? I don't _think_ I've seen this behaviour (having an all you know is wrong - moment) Can anyone confirm? Sure this is not a cache issue? Thanks WG
Author: Neil Middleton
As far as I can see it only applies to all IE browsers on Windows 98. ("All" possibly being too broad a statement, I can't be sure). To be honest, I'm amazed I haven't see this in the past, but then again the only symptom would be duplicated mails, double hits in the logs etc etc. Neil > Are you kidding me? I don't _think_ I've seen this behaviour > (having an all > you know is wrong - moment) > Can anyone confirm? Sure this is not a cache issue?
Author: Neculai Macarie
> As far as I can see it only applies to all IE browsers on Windows 98. > ("All" possibly being too broad a statement, I can't be sure). To be I happens with IE5 on Win2k for sure (I dont' know about IE4). > honest, I'm amazed I haven't see this in the past, but then again the only > symptom would be duplicated mails, double hits in the logs etc etc. I think you misunderstood. The form is not submitted twice as 2 separate POST requests. It's submitted only once, but inside that request fields from the form appear twice. Very sure it's not cache. The problem is not what data comes to the browser, but what goes out of it. <mack />
Author: Neil Middleton
possibly, I haven't looked into that much. All I know is how to get round it. I'm trying to find any mention of it on the MSDN, but, as you all know, they dont use the best user descriptions for problems.. Neil > I think you misunderstood. The form is not submitted twice as > 2 separate > POST requests. It's submitted only once, but inside that > request fields from > the form appear twice.
|
Mailing Lists
|
Latest Fusion Authority Articles
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||