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
Post a Comment