$_POST returns empty on form submit in wordpress
12,225
Solution 1
If your passing the name as a Post value, wordpress DOSNT like this!
change this
<input type="text" name="name" value="" placeholder="Your First and Last Name *" />
to
<input type="text" name="thename" value="" placeholder="Your First and Last Name *" />
changing the name to thename, Will work guaranteed! ;)
Solution 2
<form action="<?php the_permalink(); ?>" method="POST">
You don't need to echo the_permalink()
.
This works for me:
<?php print_r($_POST);?>
<form action="" method="POST">
<input type="text" name="name" value="" placeholder="Your First and Last Name *" /><?php echo $firstnameError; ?><input type="text" name="email" value="" placeholder="Yoyr Email"/><?php echo $emailError; ?><br>
<input type="text" name="company" value="" placeholder="Your Company Name"/><input type="text" name="phone" value="" placeholder="Your Phone number"/>
<textarea name="project" rows="4" cols="50"placeholder="Describe the scope of work and the most important features of the project *'"></textarea><?php echo $addressError; ?><br>
<input type="radio" name="budget" value="1500" /><input type="radio" name="budget" value="2500" /><input type="radio" name="budget" value="5000" /><input type="radio" name="budget" value="10000" /><input type="radio" name="budget" value="100001" /><input type="radio" name="budget" value="not sure" />
<input type="hidden" name="submit"value="1"/>
<input type="submit" value="SUbmit" />
</form>
Solution 3
change this
acton="<?php echo the_permalink(); ?>"
to
action="<?php echo the_permalink(); ?>"
Comments
-
Sankalp Mishra almost 2 years
I have a form:
<form action="<?php echo the_permalink(); ?>" method="POST"> <input type="text" name="name" value="" placeholder="Your First and Last Name *" /> <?php echo $firstnameError; ?> <input type="text" name="email" value="" placeholder="Yoyr Email" /> <?php echo $emailError; ?> <br> <input type="text" name="company" value="" placeholder="Your Company Name" /> <input type="text" name="phone" value="" placeholder="Your Phone number" /> <textarea name="project" rows="4" cols="50" placeholder="Describe the scope of work and the most important features of the project *'"></textarea> <?php echo $addressError; ?> <br> <input type="radio" name="budget" value="1500" /> <input type="radio" name="budget" value="2500" /> <input type="radio" name="budget" value="5000" /> <input type="radio" name="budget" value="10000" /> <input type="radio" name="budget" value="100001" /> <input type="radio" name="budget" value="not sure" /> <input type="hidden" name="submit" value="1" /> <input type="submit" value="SUbmit" /> </form>
It actions to the same page, but when I do
print_r($_POST);
it does not print anything, i.e. no value in$_POST
.What could be the reason(s) for this? I studied a few questions on SO on this but none gave me the answer I was looking for.