bukwus Posted March 10, 2010 Share Posted March 10, 2010 Hi I've built a form so that the questions generate automatically. I set the number of questions into $numQuestions, I put the questions in an array called $questions, then used a typical for loop to create the questions in an HTML table. for ($i = 1; $i <= $numQuestions; $i++) { echo '<tr> <td align="left" valign="top" border="0"> <p>'.$questions[$i].'</p> <textarea rows="5" cols="53" id="data'.$i.'" name="data'.$i.'">'.$_POST['data'.$i].'</textarea> </td> </tr>'; } It works fine. The purpose of this is because I'm building many forms with similar structure, but different questions and this saves a great deal of time. Here's where I'm getting stumped: When a user fills out the form and submits it, the results are sent to us as well as to their email address. I need to create a similar for loop that can generate the questions and the user's answers in the form email that is sent. The body of the email is the value of the $email_body variable. So, is there a way to assign the output of a for loop to the value of a variable? Many thanks, Andy Link to comment https://forums.phpfreaks.com/topic/194819-capturing-the-output-of-a-for-loop-in-a-variable/ Share on other sites More sharing options...
schilly Posted March 10, 2010 Share Posted March 10, 2010 for ($i = 1; $i <= $numQuestions; $i++) { $output .= '<tr> <td align="left" valign="top" border="0"> <p>'.$questions[$i].'</p> <textarea rows="5" cols="53" id="data'.$i.'" name="data'.$i.'">'.$_POST['data'.$i].'</textarea> </td> </tr>'; } echo $output; now you have the output in the variable and echo'd it as well to the browser Link to comment https://forums.phpfreaks.com/topic/194819-capturing-the-output-of-a-for-loop-in-a-variable/#findComment-1024421 Share on other sites More sharing options...
bukwus Posted March 11, 2010 Author Share Posted March 11, 2010 for ($i = 1; $i <= $numQuestions; $i++) { $output .= '<tr> <td align="left" valign="top" border="0"> <p>'.$questions[$i].'</p> <textarea rows="5" cols="53" id="data'.$i.'" name="data'.$i.'">'.$_POST['data'.$i].'</textarea> </td> </tr>'; } echo $output; now you have the output in the variable and echo'd it as well to the browser Thank you. Worked like a charm. Link to comment https://forums.phpfreaks.com/topic/194819-capturing-the-output-of-a-for-loop-in-a-variable/#findComment-1024922 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.