php - $_POST data from form being changed before entered into MySQL -


so new here stack exchange here goes nothing. when send form apache server data showing ones , zeros. using var_dump[_$post]; shows of data correct before passing mysql. html form:

<form method="post" action="submit.php" class="subform">         <input type="text" name = "item1" value="0">         <input type="text" name="item2" value="0">         <input type="text" name="item3" value="no">         <input type="text" name="item4" value="no">         <input type="text" name="item5" value="no">         <input type="text" name="item6" value="no">         <input type="submit" id = "form2">     </form> 

my php:

$connect = mysqli_connect('*****','*****','*****','*****'); if(!$connect){     die('could not connect: ' . mysqli_error($connect)); } $nor = isset($_post["item1"]); $cc = isset($_post["item2"]); $sd = isset($_post["item3"]); $hd = isset($_post["item4"]); $pack1 = isset($_post["item5"]); $pack2 = isset($_post["item6"]); $sql = "insert form_test (item_1,item_2,item_3,item_4,item_5,item_6) values (".$nor.",".$cc.",".$sd.",".$hd.",".$pack1.",".$pack2.")"; mysqli_query($connect, $sql); mysqli_close($connect); var_dump($_post) 

var_dumb shows data input correct in table shows 1s , 0s. advice?

isset give if value set or not. 1 if set else 0.

use

if(isset($_post["item1"])){   $nor = $_post["item1"];` } 

updated: made code make sude isset values goto insert query!

$arrcolumns = $arrvalues = array(); foreach($_post $key=>$value){     $arrcolumns[] =  key($key);     $arrvalues[] = $value;  } if(is_array($arrvalues)){    $sql = "insert form_test (implode(',',$arrcolumns))             values(implode(',',$arrvalues)";    mysqli_query($connect, $sql); } mysqli_close($connect); 

Comments