andrew_ww Posted January 20, 2007 Share Posted January 20, 2007 I have to do something like the following.If tickbox1 is checked then run this INSERT statement (that'll be a specific row added), then if tickbox2 is checked as well I would like to run two INSERT statements.Essentially I have 6 tick boxes, if all 6 are ticked then when the user clicks submits 6 new rows will have to be added. Each row will contain a different piece of information.Any ideas how I could accomplish this ? Link to comment https://forums.phpfreaks.com/topic/34997-help-with-if-statement/ Share on other sites More sharing options...
Jessica Posted January 20, 2007 Share Posted January 20, 2007 when a form is submitted, the values are stored in $_POST. If checkbox1 is named "foo" then $_POST['foo'] will contain the value of the checkbox when checked. So make the value="1" in your HTML. In your processing page, check the six boxes and see which are checked. Then run the SQL accordingly. Link to comment https://forums.phpfreaks.com/topic/34997-help-with-if-statement/#findComment-165059 Share on other sites More sharing options...
andrew_ww Posted January 20, 2007 Author Share Posted January 20, 2007 I have produced the following code, but I'm getting a query empty error, does anything look wrong with this ?[code]<?php require_once('Connections/MySQL_tick.php'); ?><?phpif (!function_exists("GetSQLValueString")) {function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = ""){ $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue; $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue); switch ($theType) { case "text": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "long": case "int": $theValue = ($theValue != "") ? intval($theValue) : "NULL"; break; case "double": $theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL"; break; case "date": $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL"; break; case "defined": $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue; break; } return $theValue;}}$editFormAction = $_SERVER['PHP_SELF'];if (isset($_SERVER['QUERY_STRING'])) { $editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);}if ($_POST['checkbox']) { $insertSQL = execute_query("INSERT INTO tbl_table1 (review_type) VALUES ('tests')");}if ($_POST['checkbox2']) { $insertSQL = execute_query("INSERT INTO tbl_table1 (review_type) VALUES ('ispsdjfsdf')");} mysql_select_db($database_MySQL_tick, $MySQL_tick); $Result1 = mysql_query($insertSQL, $MySQL_tick) or die(mysql_error());mysql_select_db($database_MySQL_tick, $MySQL_tick);$query_rs_insert = "SELECT * FROM tbl_table1";$rs_insert = mysql_query($query_rs_insert, $MySQL_tick) or die(mysql_error());$row_rs_insert = mysql_fetch_assoc($rs_insert);$totalRows_rs_insert = mysql_num_rows($rs_insert);?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Untitled Document</title></head><body><form id="form1" name="form1" method="POST" action="<?php echo $editFormAction; ?>"> <p> <input type="checkbox" name="checkbox" value="checkbox" /> Review 01 </p> <p> Review 02 </p> <input type="submit" name="Submit" value="Submit" /> <input type="hidden" name="MM_insert" value="form1"> </form><input type="checkbox" name="checkbox2" value="checkbox" /></body></html><?phpmysql_free_result($rs_insert);?>[/code] Link to comment https://forums.phpfreaks.com/topic/34997-help-with-if-statement/#findComment-165095 Share on other sites More sharing options...
Jessica Posted January 20, 2007 Share Posted January 20, 2007 Change your $insertSQL to just the SQL, not execute_query(). Just the STRING.if ($_POST['checkbox']) { $insertSQL = "INSERT INTO tbl_table1 (review_type) VALUES ('tests')";}if ($_POST['checkbox2']) { $insertSQL = "INSERT INTO tbl_table1 (review_type) VALUES ('ispsdjfsdf')";}And to ensure no errors, surround the call of this in a check.if($insertSQL){ $Result1 = mysql_query($insertSQL, $MySQL_tick) or die(mysql_error());} Link to comment https://forums.phpfreaks.com/topic/34997-help-with-if-statement/#findComment-165132 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.