Note that there are some explanatory texts on larger screens.

plurals
  1. POPHP Array Output Error
    text
    copied!<p>When I submitted the form data, I received this error on Line 13 (array_push($order,$add_order);) of my PHP code: "Warning: Invalid argument supplied for foreach()..."</p> <p>What's the best way to get this PHP code working?.</p> <p>Here is the <strong>current email output</strong> (None of the data seems to be sending properly except for the Name &amp; Phone number field):</p> <pre><code>Name: Alex Phone: 5104545778 Item: Array Quantity: Add: Message: </code></pre> <p><strong>PHP:</strong></p> <pre><code>&lt;?php if(isset($_POST['submit'])) { $to = "test@mywebsite.com"; $subject = "New Order"; $name_field = $_POST['name']; $email_field = $_POST['email']; $order = array(); foreach($_POST['item'] as $item =&gt; $name) { if ($_POST['quantity_'.$name] &gt; 0) { $add_order = array('pretty'=&gt;$_POST['pretty-name_'.$name],'qty'=&gt;$_POST['quantity_'.$name],'message'=&gt;$_POST['message_'.$name]); array_push($order,$add_order); } } $body = "From: $name_field\nE-Mail: $email_field\n"; $body .= "Their Order:\n"; foreach ($order as $item){ $body .= "--".$item['qty']."x ".$item['pretty']."\n Extra: ".$item['message']."\n\n"; } echo "Data has been submitted to $to!"; mail($to, $subject, $body); } ?&gt; </code></pre> <p><strong>HTML:</strong></p> <pre><code>&lt;form method="POST" action="neworder.php"&gt; &lt;div class ="item_left"&gt; &lt;img src="images/mexicantortas.jpg" border="2" width="200px" height="150px"&gt;&lt;br&gt; Mexican Torta - $8.50&lt;input name="item[]" type="hidden" value="torta"/&gt; &lt;input name="pretty-name_torta" type="hidden" value="Mexican Torta"/&gt;&lt;br&gt; How Many? &lt;input name="quantity_torta" type="text" /&gt;&lt;br&gt; &lt;input name="message_torta" type="text" value="Enter special order instructions here..." /&gt; &lt;/div&gt;&lt;!-- ITEM_LEFT --&gt; &lt;br /&gt; &lt;div class ="item_center"&gt; &lt;img src="images/fishsandwich.jpg" border="2" width="200px" height="150px"&gt;&lt;br&gt; Fish Sandwich - $8.50&lt;input name="item[]" type="hidden" value="fish"/&gt; &lt;input name="pretty-name_fish" type="hidden" value="Fish Sandwhich"/&gt;&lt;br&gt; How Many? &lt;input name="quantity_fish" type="text" /&gt;&lt;br&gt; &lt;input name="message_fish" type="text" value="Enter special order instructions here..." /&gt; &lt;/div&gt;&lt;!-- ITEM_CENTER --&gt; &lt;br /&gt; &lt;div class ="item_right"&gt; &lt;img src="images/hamburgers.jpg" border="2" width="200px" height="150px"&gt;&lt;br&gt; Hamburger w/ Fries - $7.00&lt;input name="item[]" type="hidden" value="hamburger"/&gt; &lt;input name="pretty-name_hamburger" type="hidden" value="Hamburger"/&gt;&lt;br&gt; How Many? &lt;input name="quantity_hamburger" type="text" /&gt;&lt;br&gt; &lt;input name="message_hamburger" type="text" value="Enter special order instructions here..." /&gt; &lt;/div&gt;&lt;!-- ITEM_RIGHT --&gt; &lt;br /&gt; &lt;div class="horizontal_form"&gt; &lt;div class="form"&gt; &lt;h2&gt;Place Your Order Now: &lt;font size="3"&gt;&lt;font color="#037B41"&gt;Fill in the form below, and we'll call you when your food is ready to be picked up...&lt;/font&gt;&lt;/font&gt;&lt;/h2&gt; &lt;p class="name"&gt; &lt;input type="text" name="name" id="name" style="text-align:center;" onClick="this.value='';" value="Enter your name"/&gt; &lt;/p&gt; &lt;p class="phone"&gt; &lt;input type="text" name="phone" id="phone" style="text-align:center;" onClick="this.value='';" value="Enter your phone #"/&gt; &lt;/p&gt; &lt;p class="submit"&gt; &lt;input type="submit" value="Place Order" name="submit"/&gt; &lt;/p&gt; &lt;/div&gt;&lt;!-- FORM --&gt; &lt;/div&gt;&lt;!-- HORIZONTAL_FORM --&gt; &lt;/form&gt; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload