Check Boxes

I am having a problem with sending the value from a checkbox to a mysql table. If the box is not checked I want to send a 0 if it is I want to send a 1, I also eant to treat the column as an int.

How can I do this?

My input field looks like this:

Allow Duplicates

mu php code is like this:
extract($_POST);
$sql=“INSERT INTO mylog (callclub, arrlsect, ituzone, ituregion, grid, utcoffset, contest, logname, crossmode, xmitters, numoperators, numstations,time_date, assisted, power, overlay, allowdupes, rrst, rdatetime, rcallsign,rsection,rzone,rband,rmode,rfrequ,rregion,rgridlog, srst, sdatetime, scallsign,ssection,szone,sband,smode,sfrequ,sregion,sgridlog,name, address, city, state, zip, country,soap1, soap2) VALUES(’$call_club’,’$arrl_section’,’$itu_zone’,’$itu_region’,’$grid’,’$utc_offset’,’$contest_name’,’$log_name’,’$cross_mode’,’$numofxmit’,’$numofops’,’$numofstations’,’$timedate’,’$assistedyn’,’$power’,’$overlay_name’,’$allow_dupes’,’$rlog_rst’,’$rlog_date’,’$rlog_callsign’,’$rlog_section’,’$rlog_zone’,’$rlog_band’,’$rlog_mode’,’$rlog_frequency’,’$rlog_region’,’$rlog_grid’,’$slog_rst’,’$slog_date’,’$slog_callsign’,’$slog_section’,’$slog_zone’,’$slog_band’,’$slog_mode’,’$slog_frequency’,’$slog_region’,’$slog_grid’,’$contact_name’,’$contact_address’,’$contact_city’,’$contact_state’,’$contact_zip’,’$contact_country’,’$soap1’,’$soap2’)”;
if (!mysql_query($sql,$con))

Thanks

If the key does not exist in your $_POST data that means it is not checked.

Sorry, but I don’t follow you. If I set the checkbox inital value to 0 and post it as unchecked, everything is on, but when I check it I get an error saying the varible is not found.

I need to get past this problem somehow.

My goal is to assign a value of 0 or 1 in that field and later react to that value.

[php]$allow_dupes = (isset($_POST[‘allow_dupes’]) ? 1 : 0);[/php]

For some reason I get a value of 0 dither way, checked or not.

Works fine for me. See example:

[php]

<?php $allow_dupes = (isset($_POST['allow_dupes']) ? 1 : 0); var_dump($allow_dupes); ?> Checkbox: [/php]

Still not working. Here is the code:

<?php if (isset($_POST['logbtn'])) { $data = $_POST["mylog"]; // Connect to MySQL $con = mysql_connect('localhost', 'root', 'ka3pmw'); if (!$con) { die('Could not connect: ' . mysql_error()); } // Create database if (mysql_query("CREATE DATABASE $data",$con)) { echo "Database created"; } else { echo "Error creating database: " . mysql_error(); } mysql_select_db($data, $con); $sql = "CREATE TABLE mylog (callclub varchar(45), arrlsect varchar(10), ituzone varchar(10), ituregion varchar(10), grid varchar(15), utcoffset varchar(3), contest varchar(30), logname varchar(15), crossmode varchar(10), xmitters varchar(3), numoperators int, numstations varchar(3), time_date varchar(10), assisted int, power varchar(3), overlay varchar(10), allowdupes int, rrst int, rdatetime int, rcallsign int, rsection int, rzone int, rband int, rmode int, rfrequ int, rregion int, rgridlog int, srst int, sdatetime int, scallsign int, ssection int, szone int, sband int, smode int, sfrequ int, sregion int, sgridlog int, name varchar(30), address varchar(60), city varchar(30), state varchar(5), zip varchar(10), country varchar(20), soap1 varchar(80), soap2 varchar(80) )"; if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } $rlog_rst = false; $allow_dupes = (isset($_POST['allow_dupes']) ? 1 : 0); $rlog_date = false; $rlog_callsign = false; $rlog_section = false; $rlog_zone = false; $rlog_band = false; $rlog_mode = false; $rlog_frequency = false; $rlog_region = false; $rlog_grid = false; $slog_rst = false; $slog_date = false; $slog_callsign = false; $slog_section = false; $slog_zone = false; $slog_band = false; $slog_mode = false; $slog_frequency = false; $slog_region = false; $slog_grid = false; extract($_POST); $sql="INSERT INTO `mylog` (`callclub`, `arrlsect`, `ituzone`, `ituregion`, `grid`, `utcoffset`, `contest`, `logname`, `crossmode`, `xmitters`, `numoperators`, `numstations`,`time_date`, `assisted`, `power`, `overlay`, `allowdupes`, `rrst`, `rdatetime`, `rcallsign`,`rsection`,`rzone`,`rband`,`rmode`,`rfrequ`,`rregion`,`rgridlog`, `srst`, `sdatetime`, `scallsign`,`ssection`,`szone`,`sband`,`smode`,`sfrequ`,`sregion`,`sgridlog`,`name`, `address`, `city`, `state`, `zip`, `country`,`soap1`, `soap2`) VALUES('$call_club','$arrl_section','$itu_zone','$itu_region','$grid','$utc_offset','$contest_name','$log_name','$cross_mode','$numofxmit','$numofops','$numofstations','$timedate','$assistedyn','$power','$overlay_name','$allow_dupes','$rlog_rst','$rlog_date','$rlog_callsign','$rlog_section','$rlog_zone','$rlog_band','$rlog_mode','$rlog_frequency','$rlog_region','$rlog_grid','$slog_rst','$slog_date','$slog_callsign','$slog_section','$slog_zone','$slog_band','$slog_mode','$slog_frequency','$slog_region','$slog_grid','$contact_name','$contact_address','$contact_city','$contact_state','$contact_zip','$contact_country','$soap1','$soap2')"; if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } echo "1 record added"; mysql_close($con); } ?>
  <tr>
    <td align="left" valign="top">Overlay</td>
    <td align="left" valign="top"><input type="text" name="overlay_name" id="textfield16" /></td>
   
    <td align="left" valign="top">Allow Duplicates</td>
    <td colspan="2" align="left" valign="top"><input type="checkbox" name="allow_dupes" id="allow_dupes" /></td>
    </tr>
     <tr>
    <td colspan="8" align="left" valign="top"><div align="center"><font size = "5"><strong>Received Information</strong></font></div></td>
    </tr>
  <tr>
    <td align="left" valign="top">&nbsp;</td>
    <td colspan="7" align="left" valign="top"> <input name="lrst" value="rlog_rst" size="1" type="checkbox"  />
    <label>RST</label>
Date/Time Call Sign Section Zone Band Mode Frequency Region Grid
    </tr>
  <tr>
    <td align="left" valign="top">&nbsp;</td>
    <td colspan="7" align="left" valign="top"> <input name="lrst2" value="slog_rst" size="1" type="checkbox" />

RST


Date/Time


Call Sign

Section

Zone


Band


Mode

Frequency

Region

Grid






















































Log Setup
Callsign Used ARRL Section ITU Zone
ITU Region Grid UTC Offset
Contest Log Name Cross Mode
Xmitter ID (0 or 1) 0 1 Operators Station
Time Assisted No Yes Power QRP Low (150 Watts and Below) High (Over 150 Watts)
Sent Information
Postal Information
Name Address
City State / Province Postal Code Country
Soap Boxes
Sopa Box line 1 Soap Box line 2
Operators
Number of Operators
<?php
for($i = 1; $i <= 100; $i++)
{
echo ‘’.$i.’’;
}
?>
           
               


What do you wish to call this setup file?



What do you wish to name this report?




Actually the problem is that you are executing extract() after defining $allow_dupes. You need to do it after extract()

[php]
extract($_POST);
$allow_dupes = (isset($_POST[‘allow_dupes’]) ? 1 : 0);
var_dump($allow_dupes);
[/php]

This works for the first one but not the rest:

extract($_POST);
$allow_dupes = (isset($_POST[‘allow_dupes’]) ? 1 : 0);
var_dump($allow_dupes);
$rlog_rst = (isset($_POST[‘rlog_rst’]) ? 1 : 0);
var_dump($rlog_rst);
$rlog_date = (isset($_POST[‘rlog_date’]) ? 1 : 0);
var_dump($rlog_date);
$rlog_callsign =(isset($_POST[‘rlog_callsign’]) ? 1 : 0);
var_dump($rlog_callsign);
$rlog_section = (isset($_POST[’$rlog_section’]) ? 1 : 0);
var_dump($rlog_section);
$rlog_zone = (isset($_POST[‘rlog_zone’]) ? 1 : 0);
var_dump($rlog_zone);
$rlog_band = (isset($_POST[‘rlog_band’]) ? 1 : 0);
var_dump($rlog_band);
$rlog_mode = (isset($_POST[‘rlog_mode’]) ? 1 : 0);
var_dump($rlog_mode);
$rlog_frequency = (isset($_POST[‘rlog_frequency’]) ? 1 : 0);
var_dump($rlog_frequency);
$rlog_region = (isset($_POST[‘rlog_region’]) ? 1 : 0);
var_dump($rlog_region);
$rlog_grid = (isset($_POST[‘rlog_grid’]) ? 1 : 0);
var_dump($rlog_grid);

$slog_rst = (isset($_POST['slog_rst']) ? 1 : 0);
var_dump($slog_rst);
$slog_date = (isset($_POST['slog_date']) ? 1 : 0);
var_dump($slog_date);
$slog_callsign = (isset($_POST['slog_callsign']) ? 1 : 0);
var_dump($slog_callsign);
$slog_section = (isset($_POST['slog_section']) ? 1 : 0);
var_dump($slog_section);
$slog_zone = (isset($_POST['slog_zone']) ? 1 : 0);
var_dump($slog_zone);
$slog_band = (isset($_POST['slog_band']) ? 1 : 0);
var_dump($slog_band);
$slog_mode = (isset($_POST['slog_mode']) ? 1 : 0);
var_dump($slog_mode);
$slog_frequency = (isset($_POST['slog_frequency']) ? 1 : 0);
var_dump($slog_frequency);
$slog_region = (isset($_POST['slog_region']) ? 1 : 0);
var_dump($slog_region);
$slog_grid = (isset($_POST['slog_grid']) ? 1 : 0);
var_dump($slog_grid);


$sql="INSERT INTO `mylog` (`callclub`, `arrlsect`, `ituzone`, `ituregion`, `grid`, `utcoffset`, `contest`, `logname`, `crossmode`, `xmitters`, `numoperators`, `numstations`,`time_date`, `assisted`, `power`, `overlay`, `allowdupes`, `rrst`, `rdatetime`, `rcallsign`,`rsection`,`rzone`,`rband`,`rmode`,`rfrequ`,`rregion`,`rgridlog`, `srst`, `sdatetime`, `scallsign`,`ssection`,`szone`,`sband`,`smode`,`sfrequ`,`sregion`,`sgridlog`,`name`, `address`, `city`, `state`, `zip`, `country`,`soap1`, `soap2`) VALUES('$call_club','$arrl_section','$itu_zone','$itu_region','$grid','$utc_offset','$contest_name','$log_name','$cross_mode','$numofxmit','$numofops','$numofstations','$timedate','$assistedyn','$power','$overlay_name','$allow_dupes','$rlog_rst','$rlog_date','$rlog_callsign','$rlog_section','$rlog_zone','$rlog_band','$rlog_mode','$rlog_frequency','$rlog_region','$rlog_grid','$slog_rst','$slog_date','$slog_callsign','$slog_section','$slog_zone','$slog_band','$slog_mode','$slog_frequency','$slog_region','$slog_grid','$contact_name','$contact_address','$contact_city','$contact_state','$contact_zip','$contact_country','$soap1','$soap2')";
if (!mysql_query($sql,$con))

I can’t see any reason it wouldn’t work for the rest.

my errro reporting gives me:

int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0) int(0)

and it posts 0’s in the record.

I found it. The problem was in the input statements. Once I fixed that thew rest worked.

Sponsor our Newsletter | Privacy Policy | Terms of Service