kimikai Posted March 10, 2014 Share Posted March 10, 2014 IM A HUGE NOOB AT PHP lol... Im working on a PHP form that has both required fields as not required fields. Everything is working so far, just that even when I put information into the unrequired fields, it doesnt send the information in my mail eventhough I have added the codes for those fields. i.e. $content .= ' Basic: ' .$basic . '\n'; now in my mail i will see "Basic:" but not the value that was inserted into $basic. I think it has something to do with the fact that I havent set any kind of validation code in PHP for the unrequired fields... cuz I kinda didnt know where to start with that. for the required fields I have this for my code: if (!empty($_POST['akkoord'])) { $akkoord = $_POST['akkoord']; } else { $error .= "- U moet akkoord gaan met de voorwaarden voordat u het bericht kunt versturen. <br />"; } my question is tho...what PHP code do i set for the unrequired fields so it collects the data from say... $basic, and sends this through within the mail so it shows w/e they put in. would it be something like if(!empty($basic)) { $basic = ($_POST['basic'])); } or am i completely off? Quote Link to comment https://forums.phpfreaks.com/topic/286865-php-form-only-sends-required-fields/ Share on other sites More sharing options...
sKunKbad Posted March 10, 2014 Share Posted March 10, 2014 (edited) What happens when you check the post array like this: echo '<pre>' . print_r( $_POST, TRUE ) . '</pre>'; Edited March 10, 2014 by sKunKbad Quote Link to comment https://forums.phpfreaks.com/topic/286865-php-form-only-sends-required-fields/#findComment-1472085 Share on other sites More sharing options...
ginerjm Posted March 11, 2014 Share Posted March 11, 2014 1 - nxt time use proper tags to post code snippets here. 2 - your guess at grabbing the 'basic' input s/b: if (!empty($_POST['basic']) $basic = $_POST['basic']; Required or not, you should be grabbing all the field inputs, sanitizing them and validating them before using them. Quote Link to comment https://forums.phpfreaks.com/topic/286865-php-form-only-sends-required-fields/#findComment-1472096 Share on other sites More sharing options...
kimikai Posted March 11, 2014 Author Share Posted March 11, 2014 (edited) ye its still in edit mode and not online...ill put a php check code in there aswell...for now i was trying to get the basics right but thanks for the help Edited March 11, 2014 by kimikai Quote Link to comment https://forums.phpfreaks.com/topic/286865-php-form-only-sends-required-fields/#findComment-1472111 Share on other sites More sharing options...
jakekoekemoer Posted March 11, 2014 Share Posted March 11, 2014 Do you use an HTML form to do post back or do you use javascript ? Either of them make sure that the method you are using is in fact "POST" and not "GET" they work differently in php. If you feel that the data should be there you can even go as far as checking $_REQUEST[' name of component in form or in query thing '] Quote Link to comment https://forums.phpfreaks.com/topic/286865-php-form-only-sends-required-fields/#findComment-1472137 Share on other sites More sharing options...
kimikai Posted March 11, 2014 Author Share Posted March 11, 2014 I only use PHP and HTML for this form, but its all solved so far... just one more question Its sending everything so far (still have to validate everything but ill leave that till the end... the only thing that doesnt want to send anything yet is the file insert field (so where ppl can put doc files etc...)ive tried multiple codes but i cant seem to get em to work =/ could anyone help me out with a code that will send it and how to implement it into my own code? This is my code <?php if (isset($_POST['submit'])) { $error = ""; if (!empty($_POST['ras'])) { $ras = $_POST['ras']; } else { $error .= "- Klik het ras van uw hond aan. <br />"; } if (!empty($_POST['kleur'])) { $kleur = $_POST['kleur']; } else { $error .= "- Vul de kleur van uw hond in. <br />"; } if (!empty($_POST['geslacht'])) { $geslacht = $_POST['geslacht']; } else { $error .= "- Vul het geslacht van uw teef in. <br />"; } if (!empty($_POST['naamhond'])) { $naamhond = $_POST['naamhond']; } else { $error .= "- Vul de naam van uw hond in. <br />"; } if (!empty($_POST['stamboom'])) { $stamboom = $_POST['stamboom']; } else { $error .= "- Vul het stamboomnummer van uw hond in. <br />"; } if (!empty($_POST['geboorte'])) { $geboorte = $_POST['geboorte']; } else { $error .= "- Vul de geboortedatum van uw hond in. <br />"; } if (!empty($_POST['klasse'])) { $klasse = $_POST['klasse']; } else { $error .= "- Klik de gewenste klasse aan. <br />"; } if (!empty($_POST['fokker'])) { $fokker = $_POST['fokker']; } else { $error .= "- Vul de naam van de fokker in. <br />"; } if (!empty($_POST['vader'])) { $vader = $_POST['vader']; } else { $error .= "- Vul de naam van de vaderhond in. <br />"; } if (!empty($_POST['moeder'])) { $moeder = $_POST['moeder']; } else { $error .= "- Vul de naam van de moederhond in. <br />"; } if (!empty($_POST['initialen'])) { $initialen = $_POST['initialen']; } else { $error .= "- Vul uw initialen in. <br />"; } if (!empty($_POST['eigachternaam'])) { $eigachternaam = $_POST['eigachternaam']; } else { $error .= "- Vul uw achternaam in. <br />"; } if (!empty($_POST['minitialen'])) { $minitialen = $_POST['minitialen']; } if (!empty($_POST['meigachternaam'])) { $meigachternaam = $_POST['meigachternaam']; } if (!empty($_POST['adres'])) { $adres = $_POST['adres']; } else { $error .= "- Vul uw straatnaam in. <br />"; } if (!empty($_POST['huisnr'])) { $huisnr = $_POST['huisnr']; } else { $error .= "- Vul uw huisnummer in. <br />"; } if (!empty($_POST['postcode'])) { $postcode = $_POST['postcode']; } else { $error .= "- Vul uw postcode in. <br />"; } if (!empty($_POST['woonplaats'])) { $woonplaats = $_POST['woonplaats']; } else { $error .= "- Vul uw woonplaats in. <br />"; } if (!empty($_POST['land'])) { $land = $_POST['land']; } if (!empty($_POST['email'])) { $email = $_POST['email']; if (!preg_match("/^[_a-z0-9]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i", $email)){ $error .= "- U heeft een ongeldig e-Mail adres ingevuld. <br/>"; } } else { $error .= "Vul uw e-Mail adres in. <br />"; } if (!empty($_POST['telefoon'])) { $telefoon = $_POST['telefoon']; } if (!empty($_POST['peradres'])) { $peradres = $_POST['peradres']; } if (!empty($_POST['eerstehond'])) { $eerstehond = $_POST['eerstehond']; } if (!empty($_POST['verderehond'])) { $verderehond = $_POST['verderehond']; } if (!empty($_POST['babypup'])) { $babypup = $_POST['babypup']; } if (!empty($_POST['koppelklas'])) { $koppelklas = $_POST['koppelklas']; } if (!empty($_POST['koppelhond1'])) { $koppelhond1 = $_POST['koppelhond1']; } if (!empty($_POST['koppelhond2'])) { $koppelhond2 = $_POST['koppelhond2']; } if (!empty($_POST['totaal'])) { $totaal = $_POST['totaal']; } if (!empty($_POST['naamjh'])) { $naamjh = $_POST['naamjh']; } if (!empty($_POST['leeftijdjh'])) { $leeftijdjh = $_POST['leeftijdjh']; } if (!empty($_POST['akkoord'])) { $akkoord = $_POST['akkoord']; } else { $error .= "- U moet akkoord gaan met de voorwaarden voordat u het bericht kunt versturen. <br />"; } if (empty($error)) { $from = 'From: ' .$initialen . $eigachternaam . ' <' . $email . '>'; $to = "nabben.daisy@live.nl"; $subject = "Inschrijfformulier"; $content = $eigachternaam . " heeft een inschrijfformulier ingevuld: \n"; $content .= 'Ras: ' .$ras . "\n"; $content .= 'Kleur: ' .$kleur . "\n"; $content .= 'Geslacht: ' .$geslacht . "\n"; $content .= 'Naam v/d Hond: ' .$naamhond . "\n"; $content .= 'Geboortedatum: ' .$geboorte . "\n"; $content .= 'Klasse: ' .$klasse . "\n"; $content .= 'Fokker: ' .$fokker . "\n"; $content .= 'Vaderhond: ' .$vader . "\n"; $content .= 'Moederhond: ' .$moeder . "\n"; $content .= 'Naam eigenaar: '.$initialen ; $content .= ' '.$eigachternaam . "\n"; $content .= 'Naam mede-eigenaar: '.$minitialen ; $content .= ' '.$meigachternaam . "\n"; $content .= 'Adresgegevens: ' .$straat ; $content .= ' '.$huisnr ; $content .= ' '.$postcode ; $content .= ' '.$woonplaats ; $content .= ' '.$land . "\n"; $content .= 'Telefoon: ' .$telefoon . "\n"; $content .= 'e-Mail: ' .$email . "\n"; $content .= 'Per Adres: ' .$peradres . "\n"; $content .= 'Eerste Hond: ' .$eerstehond . "\n"; $content .= 'Verdere Hond: ' .$verderehond . "\n"; $content .= 'Baby- Puppyklasse: ' .$babypup . "\n"; $content .= 'Koppelklasse: ' .$koppelklas . "\n"; $content .= 'Koppelklasse Hond 1: ' .$koppelhond1 . "\n"; $content .= 'Koppelklasse Hond 2: ' .$koppelhond2 . "\n"; $content .= 'Totaalbedrag: ' .$totaal . "\n"; $content .= 'Naam Juniorhandler: ' .$naamjh . "\n"; $content .= 'Leeftijd Juniorhandler: ' .$leeftijdjh . "\n"; $content .= 'Akkoord: ' .$akkoord . "\n"; $success = "<center><strong>Bedankt voor uw aanmelding!<br />We zullen de gegevens verwerken.<br />Papillon en Phalène Vereniging Nederland</strong></center>"; mail($to,$subject,$content,$from); } } ?> <div id="container"> <div id="form"> <?php if (!empty($error)) { echo '<p class="error"><strong>Uw bericht is niet verstuurd<br/> De volgende fout(en) zijn opgetreden:</strong><br/>' . $error . '</p>'; } elseif (!empty($success)) { echo $success; } ?> <form action="testcleanwphp.php" method="post" enctype="multipart/form-data" name="form1" id="form1"> <h1>Inschrijving ... 2014</h1> <h2>Inschrijving sluit: 11-05-2014</h2> <p> <label> Ras: <input type="radio" name="ras" value="Papillon" id="ras_0" /> Papillon</label> <label> <input type="radio" name="ras" value="Phalène" id="ras_1" /> Phalène</label> <label for="kleur">Kleur:</label> <input type="text" name="kleur" id="kleur"/> <label for="geslacht">Geslacht:</label> <input type="text" name="geslacht" id="geslacht" /> </p> <p> <label for="naamhond">Naam v/d Hond:</label> <input name="naamhond" type="text" id="naamhond" size="50" maxlength="50" /> </p> <p> <label for="stamboom">Stamboom Nummer:</label> <input type="text" name="stamboom" id="stamboom" /> <label for="geboorte">Geboortedatum:</label> <input name="geboorte" type="text" id="geboorte" /> </p> <table width="800" border="0" cellpadding="5"> <tr> <td width="55">Klasse:</td> <td width="265"><p> <label> <input type="radio" name="klasse" value="Babyklasse" id="klasse_0" /> Babyklasse: 4-6 maanden</label> <br /> <label> <input type="radio" name="klasse" value="Puppyklasse" id="klasse_1" /> Puppyklasse: 6-9 maanden</label> <br /> <label> <input type="radio" name="klasse" value="Jeugdklasse" id="klasse_2" /> Jeugdklasse: 9-18 maanden</label> <br /> <label> <input type="radio" name="klasse" value="Tussenklasse" id="klasse_3" /> Tussenklasse: 15-24 maanden</label> <br /> </p></td> <td width="442" valign="top"><p> <label> <input type="radio" name="klasse" value="Openklasse" id="klasse_4" /> Openklasse: vanaf 15 maanden</label> <br /> <label> <input type="radio" name="klasse" value="Kampioensklasse" id="klasse_5" /> Kampioensklasse*: vanaf 15 maanden</label> <br /> <label> <input type="radio" name="klasse" value="Fokkersklasse" id="klasse_6" /> Fokkersklasse</label> <br /> <label> <input type="radio" name="klasse" value="Veteranenklasse" id="klasse_7" /> Veteranenklasse: vanaf 8 jaar</label> <br /> </p></td> </tr> <tr> <td colspan="2">*Kampioenstitel dient bijgesloten te worden, indien dit niet gebeurt zal de hond in de Openklasse ingeschreven worden!</td> <td valign="top"><label for="attachment">Titel toevoegen: </label> <input type="file" name="attachment" id="attachment" allow="text/*" /></td> </tr> </table> <p> <label for="fokker">Naam Fokker:</label> <input name="fokker" type="text" id="fokker" size="80" maxlength="80" /> </p> <p> <label for="vader">Vaderhond:</label> <input name="vader" type="text" id="vader" size="50" maxlength="50" /> </p> <p> <label for="moeder">Moederhond:</label> <input name="moeder" type="text" id="moeder" size="50" maxlength="50" /> </p> <p> <label for="initialen">Voorletters eigenaar:</label> <input type="text" name="initialen" id="initialen" /> <label for="eigachternaam">Achternaam:</label> <input name="eigachternaam" type="text" id="eigachternaam" size="50" maxlength="50" /> </p> <p> <label for="minitialen">Voorletters Mede-eigenaar:</label> <input type="text" name="minitialen" id="minitialen" /> <label for="meigachternaam">Achternaam:</label> <input name="meigachternaam" type="text" id="meigachternaam" size="50" maxlength="50" /> </p> <p> <label for="adres">Straat:</label> <input name="adres" type="text" id="adres" size="50" maxlength="80" /> <label for="huisnr">Huisnr.:</label> <input type="text" name="huisnr" id="huisnr" /> </p> <p> <label for="postcode">Postcode:</label> <input type="text" name="postcode" id="postcode" /> <label for="woonplaats">Woonplaats:</label> <input name="woonplaats" type="text" id="woonplaats" maxlength="30" /> <label for="land">Land: </label> <input type="text" name="land" id="land" /> </p> <p> <label for="telefoon">Telefoon:</label> <input type="text" name="telefoon" id="telefoon" /> <label for="email">e-Mail:</label> <input name="email" type="text" id="email" size="50" /> </p> <p> <label for="peradres">Per Adres**:</label> <input name="peradres" type="text" id="peradres" size="80" maxlength="100" /> <br /> </p> <table width="800" border="0" cellpadding="5"> <tr> <td colspan="15" align="center" valign="top">** In geval van een verzendadres/ per adres is de persoon op dit adres mede verantwoordelijk voor het betalen van het inschrijfgeld.</td> </tr> <tr> <td colspan="15" align="center" valign="top"><p>Inschrijfgeld: (Gelieve bij één van uw inschrijvingen de aantallen + totaalprijs in te vullen!)<br /> </p> <table width="697" border="0" cellpadding="5"> <tr> <td width="153">1e Hond***:</td> <td width="256"><input type="text" name="eerstehond" id="eerstehond" /> x €22,50</td> <td width="250">= <input type="text" name="eerstetotaal" id="eerstetotaal" /></td> </tr> <tr> <td>2e Hond, enz.:</td> <td><input type="text" name="verderehond" id="verderehond" /> x €17,50</td> <td>= <input type="text" name="tweedetotaal" id="tweedetotaal" /></td> </tr> <tr> <td>Baby- & Puppyklasse:</td> <td><input type="text" name="babypup" id="babypup" /> x €10,-</td> <td>= <input type="text" name="derdetotaal" id="derdetotaal" /></td> </tr> <tr> <td>Koppelklasse:</td> <td><input type="text" name="koppelklas" id="koppelklas" /> x €0,-</td> <td>= <input type="text" name="viertotaal" id="viertotaal" /></td> </tr> <tr> <td>Naam v/d Honden:</td> <td colspan="2"><label for="koppelhond1">1e Hond Koppel:</label> <input type="text" name="koppelhond1" id="koppelhond1" /> <br /> <label for="koppelhond2">2e Hond Koppel:</label> <input type="text" name="koppelhond2" id="koppelhond2" /></td> </tr> <tr> <td colspan="3">***Als lid van de PPVN: €2,50 korting op een eerste hond. (LET OP!: Dit geld niet voor baby's en puppy's!!)</td> </tr> <tr> <td><label for="juniorhandler">Juniorhandling</label></td> <td><input type="text" name="juniorhandler" id="juniorhandler" /> x €0,-</td> <td>= <input type="text" name="vijftotaal" id="vijftotaal" /></td> </tr> <tr> <td colspan="2" align="right"><label for="totaal">Totaal:</label></td> <td>= <input type="text" name="totaal" id="totaal" /></td> </tr> <tr> <td colspan="3"><label for="naamjh">Naam/Leeftijd Juniorhandler:</label> <input name="naamjh" type="text" id="naamjh" size="30" maxlength="50" /> <input type="text" name="leeftijdjh" id="leeftijdjh" /></td> </tr> </table> <table width="697" border="0" cellpadding="5"> <tr> <td width="437" valign="top"><p><strong>Betaling:<br /> </strong><br /> Rabobank: <br /> IBAN: NL56 RABO 0151 5744 48 BIC: RABONL2U<br /> T.n.v. PPVN<br /> Beschrijving: Naam + Hondennamen<br /> <br /> </p> <strong>Het bedrag dient tegelijkertijd met inzenden van het formulier te worden betaald </strong></td> <td width="237" valign="top"><strong>Contact:</strong> <p>Secretariaat: <br /> xxx<br /> xxxx<br /> Tel.xxx<br /> <a href="xxx">xxl</a></p> <p>Penningmeester:<br /> xxx<br /> xxx<br /> xxxx<br /> <a href="xxx">xxx</a><br /> </p></td> </tr> </table></td> </tr> </table> <p> <input type="checkbox" name="akkoord" id="akkoord" /> <label for="akkoord">Ik ga akkoord met de bijzondere voorwaarden<br /> </label><br /> <input name="submit" type="submit" value="Verzend Inschrijfformulier" /> </p> </form> </div> Quote Link to comment https://forums.phpfreaks.com/topic/286865-php-form-only-sends-required-fields/#findComment-1472173 Share on other sites More sharing options...
ginerjm Posted March 11, 2014 Share Posted March 11, 2014 If you know where the problem is how about only posting the relevant portion? I know I'm not going to pore over 200+ lines of code for you. Quote Link to comment https://forums.phpfreaks.com/topic/286865-php-form-only-sends-required-fields/#findComment-1472206 Share on other sites More sharing options...
kimikai Posted March 11, 2014 Author Share Posted March 11, 2014 < ?php if (isset($_POST['submit'])) { $error = ""; if (!empty($_POST['ras'])) { $ras = $_POST['ras']; } else { $error .= "- Klik het ras van uw hond aan. <br />"; } //Bunch more of if(!empty) checks\\ if (empty($error)) { $from = 'From: ' .$initialen . $eigachternaam . ' <' . $email . '>'; $to = "nabben.daisy@live.nl"; $subject = "Inschrijfformulier"; $content = $eigachternaam . " heeft een inschrijfformulier ingevuld: \n"; $content .= 'Ras: ' .$ras . "\n"; $content .= 'Kleur: ' .$kleur . "\n"; $content .= 'Geslacht: ' .$geslacht . "\n"; $content .= 'Naam v/d Hond: ' .$naamhond . "\n"; $content .= 'Geboortedatum: ' .$geboorte . "\n"; $content .= 'Klasse: ' .$klasse . "\n"; $content .= 'Fokker: ' .$fokker . "\n"; $content .= 'Vaderhond: ' .$vader . "\n"; $content .= 'Moederhond: ' .$moeder . "\n"; $content .= 'Naam eigenaar: '.$initialen ; $content .= ' '.$eigachternaam . "\n"; $content .= 'Naam mede-eigenaar: '.$minitialen ; $content .= ' '.$meigachternaam . "\n"; $content .= 'Adresgegevens: ' .$straat ; $content .= ' '.$huisnr ; $content .= ' '.$postcode ; $content .= ' '.$woonplaats ; $content .= ' '.$land . "\n"; $content .= 'Telefoon: ' .$telefoon . "\n"; $content .= 'e-Mail: ' .$email . "\n"; $content .= 'Per Adres: ' .$peradres . "\n"; $content .= 'Eerste Hond: ' .$eerstehond . "\n"; $content .= 'Verdere Hond: ' .$verderehond . "\n"; $content .= 'Baby- Puppyklasse: ' .$babypup . "\n"; $content .= 'Koppelklasse: ' .$koppelklas . "\n"; $content .= 'Koppelklasse Hond 1: ' .$koppelhond1 . "\n"; $content .= 'Koppelklasse Hond 2: ' .$koppelhond2 . "\n"; $content .= 'Totaalbedrag: ' .$totaal . "\n"; $content .= 'Naam Juniorhandler: ' .$naamjh . "\n"; $content .= 'Leeftijd Juniorhandler: ' .$leeftijdjh . "\n"; $content .= 'Akkoord: ' .$akkoord . "\n"; $success = "<center><strong>Bedankt voor uw aanmelding!<br />We zullen de gegevens verwerken.<br />Papillon en Phalène Vereniging Nederland</strong></center>"; mail($to,$subject, $content, $from); } } ?> <div id="container"> <div id="form"> <?php if (!empty($error)) { echo '<p class="error"><strong>Uw bericht is niet verstuurd<br/> De volgende fout(en) zijn opgetreden:</strong><br/>' . $error . '</p>'; } elseif (!empty($success)) { echo $success; } ?> thats my PHP code which i use now... this deals with every regular input field and sends me an email after someone hits the submit button. The only thing i cant figure out is how to add a piece of coding into this to get attachments send with it (from an input file field). I dont know if its restricted to the way I've written the rest of the PHP text. If that makes sense.... Quote Link to comment https://forums.phpfreaks.com/topic/286865-php-form-only-sends-required-fields/#findComment-1472209 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.