I’m really new to PHP, so this is probably a pretty dumb question.
I’m using PHP to submit an email form, and would like the email to contain the values of some of the form’s inputs. Here’s a stripped down version:
<?php
if(isset($_POST['submit'])) {
$to = 'address@gmail.com' ;
$subject = 'Subject';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$message =
//here are the values that the email will send me
"<p>".$_POST('some-name')."</p>
<p>".$_POST('some-name')."</p>" ;
mail($to, $subject, $message, $headers);
header('Location: ../estimate.html');
} ?>
The value of input some-name is, say, 10-widgets posted from the form.
Here’s the question: instead of listing “10-widgets” twice (as the above code will do), how do I list the first part in the first <p> (so it would be “10”) and the second part in the second <p> (so it would be “widgets”)?
Something like the following seems promising:
$wholeVal = $_POST('some-name');
$partVal = explode("-",$wholeVal);
and then, somewhere, $_POST($partVal[0]); and $_POST($partVal[1]);
But I don’t know where this should take place, and anywhere I put it seems to make the whole thing break.
Thanks for your help.
First, you should access $_POST with brackets, like
$_POST['some-name'].explodereturns an array. So in your example,explode('-', '10-widgets')[0]will return'10'andexplode('-', '10-widgets')[1]will return'widgets'So your code will be something like this: