• Just in the last day the spinner goes endlessly on submit but only on iPhone. The form works ok on desktop and on Android phones. Any idea what could be causing this?

Viewing 15 replies - 1 through 15 (of 17 total)
  • I need the answer to this as well. I’m having the same issue. Suggestions in other posts have not worked.

    We’re having the same issue. If i remove the file upload fields from our form – the form submits on iPhone but with fileuploads – just spins.

    So – do you all have fileuploads on the form?

    I’m running on iOS 11.4 – I’m trying to find an iOS 11.3 device – becuase I’m pretty sure this worked a couple of weeks ago.

    and I just updated to cf7 5.0.2

    I also have flamingo enabled for data capture. I’m going to try turning that off as well.

    Next step – try safari / macOS and then kick into the iOS safari debugger and see what is going on.

    Thread Starter webwizz

    (@webwizz)

    Yes, there is a file upload on the form.

    I’ll try the form without it and let you know but it will be tomorrow before I can get back on here.

    Thanks for your input.

    so – not a flamingo issue, disabled, put fileuploads in and just spins.

    pulling mac out of the closet and getting it powered on.

    Ah ha… spins on Safari on macOS too… so a safari issue.

    getting a 500 error. Maybe a PHP issue. I know we just did PHP updates over the weekend.

    checking.

    Response
    HTTP/1.1 500 Internal Server Error
    ETag: “73b-563482dd0b140”
    Content-Type: text/html; charset=UTF-8
    Date: Wed, 27 Jun 2018 20:48:14 GMT
    Last-Modified: Sun, 21 Jan 2018 12:09:01 GMT
    Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/5.6.36 mod_python/3.5.0- Python/2.7.5
    Content-Length: 1851
    Connection: close
    Accept-Ranges: bytes
    Vary: User-Agent

    OK – tried it with PHP 7.1 and PHP 7.2, tried it with fast CGI and PHP-FPM – spins on macOS Safari and iOS Safari. macOS + Chrome is OK.

    I went all the way down to PHP 5.6 – and still the spinning wheel of death. So it looks like not an issue with PHP.

    I’m running WordPress 4.9.6 – does anyone with the issue have it on an earlier version (like 4.9.3)??

    SO – after all that, submitting a bug report to apple and everything else. What we are doing as a temporary solution is deactivating AJAX for CF7. It sucks that we have to do this but until Apple gets the webkit fix integrated and released – its either that or we remove the file upload fields (which the client isn’t going to let me do).

    in wp_config.php put the following line
    define(‘WPCF7_LOAD_JS’, false);

    if you have some forms that DON’T have file upload fields and you want to enable AJAX for just that form – you can enable the javascript on those pages by putting the following in the page template (so we have a template for our regular contact form called contact.php and we added this at the top BEFORE wp_head() is called)
    <?php
    if ( function_exists( ‘wpcf7_enqueue_scripts’ ) ) {
    wpcf7_enqueue_scripts();
    }
    ?>

    thanks to a LOT of other people who are way smarter than me for all these seemingly disparate pieces

    I’m going to look to see if I can use PHP and determine if the browser is safari and only turn AJAX off for that in the form pages.

    Thread Starter webwizz

    (@webwizz)

    Thanks for your help in finding what’s wrong. I’ll see if the client can work without the upload field before I implement the code fixes.

    I’ve tested this code with a bunch of stuff this morning – Safari on mac, safari on iOS, Chrome on mac & windows, IE on windows, Edge on windows, firefox on mac and windows, opera on windows, chrome on android (and I’ve tested in incognito mode on anything I could). I have not tested this on some of the more exotic browsers (dolphin, chromium, etc) – but it seems to work. YMMV

    This must be above the wp_head call. This assumes you have turned off the JS loading in the wp-config.php file.

    For Safari it will leave AJAX off, for everything else it will turn it on.

    <?php if (!(strpos($_SERVER['HTTP_USER_AGENT'], 'Safari') && !strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome'))) {
    if (function_exists( 'wpcf7_enqueue_scripts')) {
    wpcf7_enqueue_scripts(); }}
     ?>

    Thank you @jvivona for all the troubleshooting.

    I was not able to find a file call “wp_config.php” where else I can disable the Ajax?

    Thank you in advance

    @esbasti sorry – was a typo in my 1st post – it should be in wp-config.php –

    It’s the same file where you put your database settings, etc.

Viewing 15 replies - 1 through 15 (of 17 total)
  • The topic ‘Form won’t submit on iPhone but works on Android’ is closed to new replies.