I have the following simple form:
<form id="MyForm" action="../webformmailer.php" method="post" >
<input type="hidden" name="subject" value="Submission" />
<input type="hidden" name="redirect" value="../sandbox/123/thanks.html" />
<input type="text" size="20" name="FirstName" />
<input type="text" size="20" name="LastName" />
<input type="text" size="20" name="email" />
<select name="comment">
<option value="yes">Yes</option>
<option value="no">No</option>
</select>
<input type="submit" name="submit" value="submit"/>
</form>
I am redirecting users to a simple 'thanks.html' page after they submit their information. This works well in all browsers except IE 8, which redirects users to the webformmailer.php or the action of the form.
Can anyone point me in the right direction?
Thanks
Inside your action script, process the request and then redirect to thanks.html:
header('Location: ../sandbox/123/thanks.html');
Update: since you don't have control over the action script, and all other browsers work exception IE8, then the problem must be in the way IE8 sends data to the server. Try set enctype="application/x-www-form-urlencoded" and see if it works.
Related
I try to send a message from my contact form, but I don't receive any message.
I use QuickEmail to test it, and I receive a message on my mailtrap account. I guess the problem is from the contact form (right now I am local).
//Chunk
[[!FormIt?
&hooks=`spam,email,redirect`
&emailTpl=`MyEmailChunk`
&emailTo=`test#gmail.com`
&redirectTo=`123`
]]
<form action="[[~[[*id]]]]" method="post" class="form">
<input class="mb-4" type="text" placeholder="NAME" id="name" />
<input class="mb-4" type="text" placeholder="EMAIL" id="email" />
<textarea class="mb-4" type="text" placeholder="MESSAGE" id="message"></textarea>
<button class="btn btn-success">SUBMIT</button>
</form>
//Second chunk
Name: [[+input-name]] <br/>
Email: [[+input-email]] <br/>
Message: <br />
[[+input-textare]]
<br/>
Agreement check: [[+input-checkbox]]
Do you use SMTP? This maybe important also, please enable it. It offen depends on server settings.so If I understood this properly and you really use local server - all that makes sense also.
You are missing the name parameter, which is required.
<input name="input-name" class="mb-4" type="text" placeholder="NAME" id="name" />
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#htmlattrdefname
<!-- Contact Form -->
<form id="contact-form" method="post" action="https://www.formspree.io/tcffo.volunteers#gmail.com">
<div>
<input type="text" name="Name:" id="name" placeholder="Name">
<br>
<input type="email" name="Email:" id="email" placeholder="Email Address" />
<br>
<div><textarea name="Message:" id="help" placeholder="Message"></textarea></div>
<br>
<input type="submit" value="Send">
<input type="hidden" name="_next" value="//tcffo.github.io" />
</div>
</form>
Code is here.
https://github.com/tcffo/tcffo.github.io
You're using the wrong Formspree URL there. It should https://formspree.io/, without the www., that's why.
I'm trying to use formspree.io but for some reason is returning the following error:
Make sure you open this page through a web server, Formspree will not work in >pages browsed as HTML files. Also make sure that you're posting to >https://formspree.io/test#yopmail.com.
For geeks: could not find the "Referrer" header.
My code is the following:
<form action="https://formspree.io/test1#yopmail.com" method="POST" target="_blank">
<input type="text" id="name" name="name" placeholder="*First Name">
<input type="text" id="lastname" name="lastname" placeholder="*Last Name">
<textarea id="subject" name="subject" placeholder="*Your Message" style="height:200px"></textarea>
<input type="submit" value="Submit">
</form>
Please notice that I have the s in the "https://fo..." and I also have in my head tag the following:
<meta name="referrer" content="origin">
Thanks for any help.
Am using SEO URls to load my pages ie http://www.mywebsite.com/p/page1/100 but am having a problem with my search form. When I click submit, instead of the entire url changing to the stated one in the form, it just appends the variables to the url eg http://www.mywebsite.com/p/page1/100?p=search&q=Any+Query+String+here.
My question is, how do I replace the entire URL with the form variable instead?
Here is my form code:
<form action="<?php $_SERVER['PHP_SELF'] ?>" method="get">
<input type="text" onfocus="if(this.value==this.defaultValue) this.value='';" onblur="if(this.value=='') this.value=this.defaultValue;" name="q" value="Search" />
<input type="hidden" value="search" name="p" />
<input type="submit" value="Search" class="submit" />
</form>
OK I solved it using a hack I think???
Apparently if I append a variable to the action url, this will force the browser to load the new url instead of append the form variable to the existing url.
Eg.
<form action="<?php $_SERVER['PHP_SELF'] ?>?p=search" method="get">
<input type="text" onfocus="if(this.value==this.defaultValue) this.value='';" onblur="if(this.value=='') this.value=this.defaultValue;" name="q" value="Search" />
<input type="hidden" value="search" name="p" />
<input type="submit" value="Search" class="submit" />
</form>
This worked for me but I dunno if it's the right way to achieve this or it's a hack.
I'm making a login form, but I don't want browser to be able to save username & password combination.
Just like PayPal or banks.
I have heard that I could do this by using AJAX & Javascript but I'm so unfamiliar with them, so I need to ask help from you!
<form id="loginform">
<label for="username">Username</label>
<input name="username" type="text" value="" required="required" />
<label for="password">Password</label>
<input name="password" type="password" value="" required="required" />
<input type="button" name="doLogin" value="Login" onclick="login(this.form.username.value,this.form.password.value);" />`
With that login form the browser doesn't ask to save the login combo... but now I just need to know how to send the login info to PHP :P
I am assuming that you require the prevention of things like autoformer (for Firefox). Simply change the names of the various input values to something that is different each time the user loads the form.
As Sunny's link suggest, you can use the autocomplete attribute to prevent the browser from suggesting input for a field. So for your example:
<form id="loginform">
<label for="username">Username</label>
<input name="username" type="text" value="" required="required" autocomplete="off"/>
<label for="password">Password</label>
<input name="password" type="password" value="" required="required" autocomplete="off" />
<input type="button" name="doLogin" value="Login" onclick="login(this.form.username.value,this.form.password.value);" />