Form only works when Signed in.

Permalink 1 user found helpful
Hi I'm very new to C5 so Sorry in advanced if I've missed anything:

I have two forms on my page suffering the same thing.

I have created two forms using the Stack contents, and I've added the form to one of the stacks, set up the fields, the thank you page, and the notify email address on both.

When I'm logged in to the website as admin and I fill out the form, the form works, I go to the thank you page, And I can see by going to Form results that I've received the record, and going in to Logs I can see the email notification has sent successfully & is being received.

However When you're logged out, the form just straight up doesn't work, the url changes, but it doesn't go to the thank you page, and it also doesn't submit, or error, or anything. It just refreshes but changes the url. - Any idea what I've missed, let me know if you need any additional information :)

 
JohntheFish replied on at Permalink Reply
JohntheFish
A couple of the 'usual suspects'
1. Stacks and changes to stacks need to be 'Approved'
2. Permissions
Jamiexo replied on at Permalink Reply
Hey John,

Thanks for the response! However I have checked both permissions and approved the stacks, both are now in order however my form isn't working as of yet, you can find a link to the page here:http://tuitionneath.co.uk/ let me know what you think.
ConcreteOwl replied on at Permalink Reply
ConcreteOwl
Try removing this javascript from your footer
<script type="text/javascript">
   //insert placeholder
   document.getElementsByName('Question8')[0].placeholder='First Name';
   document.getElementsByName('Question9')[0].placeholder='Last Name';
   document.getElementsByName('Question10')[0].placeholder='Email Address';
   document.getElementsByName('Question11')[0].placeholder='Phone Number';
   document.getElementsByName('Question12')[0].placeholder='First Name';
   document.getElementsByName('Question13')[0].placeholder='Last Name';
   document.getElementsByName('Question14')[0].placeholder='Email Address';
   document.getElementsByName('Question15')[0].placeholder='Phone Number';
   document.getElementsByName('Question20')[0].placeholder='First Name';
   document.getElementsByName('Question21')[0].placeholder='Last Name';
   document.getElementsByName('Question22')[0].placeholder='Email Address';
   document.getElementsByName('Question23')[0].placeholder='Phone Number';
   document.getElementsByName('Question24')[0].placeholder='Message';

If the form starts working then take a close look at the console errors to find why this script is throwing errors..
Jamiexo replied on at Permalink Reply
Hey Weyboat,

Good spot, I did check this before, I've completely commented this out & there is no console errors at all now, the form still isn't working :(

I'm completely at a loss lol
Jamiexo replied on at Permalink Reply
Update on this:

Tried to isolate the problem by removing the js files one by one to see if there was any issues with those, I also tried removing the header & the footer and the form was still reluctant to fire when signed out. The interesting thing is both these blocks are being used elsewhere on the site, but they will not fire on the home page, but will on other pages.

Currently going through to see if I can use a different form add on & see if that makes a different.
Gondwana replied on at Permalink Best Answer Reply
Gondwana
Hmmm, this is deja vu. I wrote a (legacy) form block and had to get right into c5's code to see how the validation worked. I found some weird checks about whether the block was on the home page or not; I could never understand why. Unfortunately, I don't recall where that was. However, the bottom line is that it may not be your fault.

I think they've recently changed how the home page is identified (it used to have a fixed cID or something). Maybe the recent changes haven't gone far enough, and have broken things in your case.

Of course, you should try to eliminate the possibility that other blocks on your home page are interfering.
Jamiexo replied on at Permalink Reply
Hey Gondwana,

Thanks for the response!

Yeah, I think it definitely could be a reason for it! Yesterday evening I went through and removed block by block & It still wouldn't fire.

I ended up downloading a new form addon called Formidable, which has resolved the problem some what, the form with Formidable fires, sends a notification and takes you to the thank you page.

I'm not completely satisfied at this way of resolving it but it has worked, maybe something to look in to again on a rainy day!

Thank you all for the replies & assistance.

Kindest,

Jamie

xo