Note that there are some explanatory texts on larger screens.

plurals
  1. POphp array filter data insertion to mysql
    text
    copied!<p>i had prepared below form, i need data insert to mysql through this form but problem is when i try to insert array_filter gives problem. I need only selected box values data to mysql.</p> <p>example: when user selected select box 1st row and 5th row only these two rows should insert to mysql, instead of this 5 rows inserting with empty values remain data also inserting. please help</p> <pre><code>&lt;form action="array-act.php" method="post"&gt; &lt;table width="500" border="0"&gt; &lt;tr&gt; &lt;td&gt;&lt;input name="name[]" value="One" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="marks[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="grade[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;select name="first[]"&gt;&lt;option value=""&gt;Select&lt;/option&gt;&lt;option value="SM"&gt;SM&lt;/option&gt;&lt;option value="QB"&gt;QB&lt;/option&gt;&lt;/select&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;input name="name[]" value="Two" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="marks[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="grade[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;select name="first[]"&gt;&lt;option value=""&gt;Select&lt;/option&gt;&lt;option value="SM"&gt;SM&lt;/option&gt;&lt;option value="QB"&gt;QB&lt;/option&gt;&lt;/select&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;input name="name[]" value="Three" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="marks[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="grade[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;select name="first[]"&gt;&lt;option value=""&gt;Select&lt;/option&gt;&lt;option value="SM"&gt;SM&lt;/option&gt;&lt;option value="QB"&gt;QB&lt;/option&gt;&lt;/select&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;input name="name[]" value="Four" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="marks[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="grade[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;select name="first[]"&gt;&lt;option value=""&gt;Select&lt;/option&gt;&lt;option value="SM"&gt;SM&lt;/option&gt;&lt;option value="QB"&gt;QB&lt;/option&gt;&lt;/select&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;&lt;input name="name[]" value="Five" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="marks[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;input name="grade[]" type="text" /&gt;&lt;/td&gt; &lt;td&gt;&lt;select name="first[]"&gt;&lt;option value=""&gt;Select&lt;/option&gt;&lt;option value="SM"&gt;SM&lt;/option&gt;&lt;option value="QB"&gt;QB&lt;/option&gt;&lt;/select&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;input name="Go" type="submit" /&gt; &lt;/form&gt; &lt;?php $name = $_POST['name']; $marks = $_POST['marks']; $grade = $_POST['grade']; $option = array_values(array_filter($_POST['first'])); $n = count($option); for ($i = 0; $i &lt; $n; $i++) { $query = "INSERT INTO `table` (`name`, `marks`, `grade`, `option`) VALUES ('$name[$i]', '$marks[$i]', '$grade[$i]', '$option[$i]')"; // Here you must execute your query $result = mysql_query($query) or die('Failed to connect to server: ' . mysql_error()); } if($result) { echo "Data Inserted"; } else { echo "Data Not Inserted"; } ?&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