Reputation: 59
hi i have a form which has a checkbox and i want to save the value of the checkbox into my database but when i click on the checkbox and save it it works fine and when i try to save the form without checking on the chekbox it shows undefined index can any one help me out
here is my html
<input type="checkbox" name="active" value="1"></input>
here is my php
$nactive = $_POST["active"];
here is my save part
mysql_query("INSERT INTO `usermain`( `username`, `password`, level, active,`zimname`, zimmob, `email`, admin, makhtab)
Values
('$nuser', '$npwd', '$nlevel', '$nactive', '$nzname', '$nzmob', '$nemail', '0', '$makh')") or die(mysql_error());
Upvotes: 2
Views: 20130
Reputation: 1576
If the checkbox isn't checked, the browser won't actually send the data in your POST request. You'll need to check if the value is set, and then update your variable accordingly.
$inactive = isset($_POST["active"]) ? $_POST["active"] : 0;
Upvotes: 8
Reputation: 156
Use an isset control in the next page like this :
if (!isset($nactive)) $nactive = 0;
If your checkbox isn't checked, the value will be 0
Upvotes: 0
Reputation: 1971
If the checkbox is not checked, the value is not posted to the script. You must check if it is set before using it.
if(isset($_POST['active'])){
//do something if is
}
else{
//do something if not
}
Upvotes: 3