#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2012
    Posts
    10
    Rep Power
    0

    Curl_multi_exec causes IE10 to break, wtf?!


    I've decided to reach out to the world about this issue because it is driving me insane.

    I have a search process which takes advantage of curl_multi_exec so I can search multiple DB's and API's at the same time to increase performance. this works great and has been working great for some time.

    In Chrome, Firefox and all versions of IE below 10 this is working great, however in IE 10 I get "This page can't be displayed" error. There are no errors in the web server logs. There are also no errors in IE10 debug mode. helpful!

    By a process of elimination I have tracked it back to the following piece of code.

    PHP Code:
        //execute the handles
            
    do {
                
    curl_multi_exec($mh,$running);
            } while (
    $running 0); 
    curl_multi_exec is a server side function, not client side. it should have no interaction with the browser.

    This is totally weird behaviour as it appears the server side function is interacting with the browser somehow and causing an issue.

    (Good old MS once again releasing crap )

    Before I go into any further details I wondered if anybody had come across this issue.

    I am using a LAMP server, PH version 5.3.14 with Apache 2.

    Cheers

    Noodle
  2. #2
  3. No Profile Picture
    Contributing User
    Devshed Expert (3500 - 3999 posts)

    Join Date
    Jul 2003
    Posts
    3,500
    Rep Power
    594
    I've not used that function. However, you are correct in that it is not the function per se. Rather it is whatever the function is delivering to IE. You need to compare the HTML source on one of the working browsers with that on IE to see what IE is not handling properly.
    There are 10 kinds of people in the world. Those that understand binary and those that don't.
  4. #3
  5. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2012
    Posts
    10
    Rep Power
    0
    the function should not deliver anything to IE. The function runs a few other php files in the background.

    Each of those pulls data from various API's and stores the results in a MySQL table.

    There are no outputs from any of the files loaded by the curl_multi_exec function.

    When the process to load data has completed the browser loads the results from the table and loads the page like any normal site.

    There is no source at all when using IE10. well, that strictly isn't true. there is a source, but the code is only for the built in error message rather than the site itself.

    I've put in a work around for now which basically checks if IE is being used and shoves it down another processing route. The down side to this is it breaks my SEO for IE users.

    I suspect IE10 is somehow picking up on the various other server side scripts which gets called, and then wants to do weird stuff with the info.
  6. #4
  7. No Profile Picture
    Contributing User
    Devshed Expert (3500 - 3999 posts)

    Join Date
    Jul 2003
    Posts
    3,500
    Rep Power
    594
    IE has no idea what is happening on the server side nor can it execute anything on the server unless Ajax is involved. Whatever output is resulting from the entire process contains something that IE does not like. There is no magic between server and client. The browser sees nothing but HTML being sent from the server. To say the script does not output anything makes no sense (perhaps that function does not output anything directly). If that were the case why is a browser even involved? You must be outputting something at some point and that is where the problem lies. Something being output is causing IE to choke. Finding that is where you need to concentrate your efforts.
    There are 10 kinds of people in the world. Those that understand binary and those that don't.
  8. #5
  9. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2012
    Posts
    10
    Rep Power
    0
    Originally Posted by gw1500se
    IE has no idea what is happening on the server side nor can it execute anything on the server unless Ajax is involved. Whatever output is resulting from the entire process contains something that IE does not like. There is no magic between server and client. The browser sees nothing but HTML being sent from the server. To say the script does not output anything makes no sense (perhaps that function does not output anything directly). If that were the case why is a browser even involved? You must be outputting something at some point and that is where the problem lies. Something being output is causing IE to choke. Finding that is where you need to concentrate your efforts.
    that was my initial thought also, but after a process of elimination, I am left with the less rational result of IE10 is somehow picking up on the server side function and reacting to it.

    by using the die() function I have gone through line by line trying to find at which point the error happens.

    Before the code in my original post, I get the output. After that point I get the browser error.

    Up to that point in the process there are NO outputs at all to the browser, it is before any html or other content is built and delivered.

    As the issue appears to be browser specific (at the client), I can't capture any errors / issues with PHP.

    IE's debug is not helpful either, leaving me out of ideas at this point.

    Are there any advanced debug tools for IE10?
  10. #6
  11. No Profile Picture
    Contributing User
    Devshed Expert (3500 - 3999 posts)

    Join Date
    Jul 2003
    Posts
    3,500
    Rep Power
    594
    The HTML sent to IE would be precisely the same as that sent to any other browser. I have 2 suggestions. First save the source in a working browser to a file then try to open that file in IE. Perhaps some error message will occur that can help you isolate the problem. Second, post the source to an IE forum to see if anyone can spot something that would give IE heartburn. You might even try posting that source to the HTML forum to see if someone can see the problem.
    There are 10 kinds of people in the world. Those that understand binary and those that don't.
  12. #7
  13. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2012
    Posts
    10
    Rep Power
    0
    Originally Posted by gw1500se
    The HTML sent to IE would be precisely the same as that sent to any other browser. I have 2 suggestions. First save the source in a working browser to a file then try to open that file in IE. Perhaps some error message will occur that can help you isolate the problem. Second, post the source to an IE forum to see if anyone can spot something that would give IE heartburn. You might even try posting that source to the HTML forum to see if someone can see the problem.
    Thank you for your suggestion. I have taken the HTML source from a working browser and saved it to a file. However, the saved code is working without issue when opening it in IE10.

    The issue although browser specific isn't related to the HTML being delivered to the browser.
  14. #8
  15. No Profile Picture
    Contributing User
    Devshed Expert (3500 - 3999 posts)

    Join Date
    Jul 2003
    Posts
    3,500
    Rep Power
    594
    Are you testing browsers from the same host or using a different host for IE and the other browsers? This is not making sense unless there is something in the middle that is changing the data stream.
    There are 10 kinds of people in the world. Those that understand binary and those that don't.
  16. #9
  17. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2012
    Posts
    10
    Rep Power
    0
    Originally Posted by gw1500se
    Are you testing browsers from the same host or using a different host for IE and the other browsers? This is not making sense unless there is something in the middle that is changing the data stream.
    all of the browsers are installed on the same machine. One exception to that is using an earlier version of IE which is installed on another laptop.

    I agree it doesn't make much sense. its driving me a little crazy trying to figure it out.
  18. #10
  19. No Profile Picture
    Contributing User
    Devshed Expert (3500 - 3999 posts)

    Join Date
    Jul 2003
    Posts
    3,500
    Rep Power
    594
    In any case I submit that this is not a PHP issue. You might try uninstalling IE and reinstalling it. Certainly you should try IE on a different host to verify consistency.
    There are 10 kinds of people in the world. Those that understand binary and those that don't.
  20. #11
  21. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2012
    Posts
    10
    Rep Power
    0
    I wish it was HTML related, but I don't see how it could be at the moment as it is failing at a point during the PHP code which is generating the result sets.

    As an example, please consider this URL.
    http://www.auctionhunt.co.uk/fishing

    Can you try this in IE10, and also other browsers to see the end result of the issue.

    at least I could rule out my local environment.
  22. #12
  23. No Profile Picture
    Contributing User
    Devshed Expert (3500 - 3999 posts)

    Join Date
    Jul 2003
    Posts
    3,500
    Rep Power
    594
    Unfortunately I don't have access to any IE10 browsers at the moment. IE9 and Firefox on Win7 and Linux seem to work fine.
    There are 10 kinds of people in the world. Those that understand binary and those that don't.
  24. #13
  25. No Profile Picture
    Contributing User
    Devshed Frequenter (2500 - 2999 posts)

    Join Date
    Dec 2004
    Posts
    2,997
    Rep Power
    375
    i have tested in IE10 and i get the page with a listing of fish related items.
  26. #14
  27. Wiser? Not exactly.
    Devshed God 1st Plane (5500 - 5999 posts)

    Join Date
    May 2001
    Location
    Bonita Springs, FL
    Posts
    5,953
    Rep Power
    4033
    I've tried the URL in IE 10 as well and had no issues. Sounds like it may be a local issue.
    Recycle your old CD's, don't just trash them



    If I helped you out, show some love with some reputation, or tip with Bitcoins to 1N645HfYf63UbcvxajLKiSKpYHAq2Zxud

IMN logo majestic logo threadwatch logo seochat tools logo