The code is a bit long, due to the number of variables, but I can't seem to get one variable to write to mysql and this affects the yes/no options in particular - they do not change. However, when I remove this variable (catid - the first one) everything works fine. Basically, the form is an admin form for an online catalog. I have not included the form, because it is very long html, but I've included the php processing script and the function that the categories uses to retrieve the list for presentation on the form. Any help is greatly appreciated:
PHP PROCESSING:
<?
require_once("sc_fns.php");
$POST['prod_name'] = addslashes($POST['prod_name']);
admin_header();
echo "<BR><FONT FACE='ARIAL, HELVETICA' SIZE='1' COLOR='333366'>To update your Products , change the information below and click submit. <BR>Your new Global Settings information will be updated in your online store database.<BR>";
db_connct();
mysql_select_db("book_sc");
$query = ("SELECT * FROM products_test WHERE prod_name = '$prod_name'");
$result = mysql_query($query);
$num_results = mysql_num_rows($result);
//echo "<BR>Number of products:".$num_results."";
for ($i=0; $i <$num_results; $i++)
{
$row = mysql_fetch_array($result);
}
?>
<FORM METHOD="POST" ACTION="update_products_test.php">
<TABLE WIDTH="600" COLS="4" BORDER="0" CELLPADDING="5" CELLSPACING="5">
<TR>
<td width="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Category:</td>
<td><select name="catid">
<?
// list of possible categories comes from database
$cat_array=get_categories();
foreach ($cat_array as $thiscat)
{
echo "<option value=\"";
echo $thiscat["catid"];
echo "\"";
// if existing book, put in current catgory
if ($edit && $thiscat["catid"] == $book["catid"])
echo " selected";
echo ">";
echo $thiscat["catid"];
echo "\n";
}
?>
</select>
</td>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Product Name:</FONT></TD>
<TD><INPUT TYPE="TEXT" NAME="prod_name" VALUE="<?PHP echo $row["prod_name"]; ?>"></TD>
</TR>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Product Number:</FONT></TD>
<TD><INPUT TYPE="TEXT" NAME="prod_num" VALUE="<?PHP echo $row["prod_num"]; ?>"></TD>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Product Price:</FONT></TD>
<TD><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">$</FONT><INPUT TYPE="TEXT" NAME="prod_price" SIZE="6" VALUE="<?PHP echo $row["prod_price"]; ?>"></TD>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Shipping Method One Price:</FONT></TD>
<TD><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">$ </FONT><INPUT TYPE="TEXT" NAME="ship_one" SIZE="6" VALUE="<?PHP echo $row["ship_one"]; ?>"></TD>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Tax Exempt:</FONT></TD>
<TD>
<?
$selectedChoice = $row["tax_exempt"];
$options = Array("Yes", "No");
echo "<BR><select name=\"tax_exempt\">\n";
for($i = 0; $i < sizeof($options); $i++) {
echo "<option value=\"" . $options[$i] . "\"";
if($selectedChoice == $options[$i]) {
echo " selected";
}
echo ">" . $options[$i] . "</option>\n";
}
echo "</select>";
?>
</TD>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Shipping Method Two Price:</FONT></TD>
<TD><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">$ </FONT><INPUT TYPE="TEXT" NAME="ship_two" SIZE="6" VALUE="<?PHP echo $row["ship_two"]; ?>"></TD>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Use Declining Balance Inventory:</FONT></TD>
<TD>
<?
$selectedChoice = $row["decl_bal"];
$options = Array("Yes", "No");
echo "<BR><select name=\"decl_bal\">\n";
for($i = 0; $i < sizeof($options); $i++) {
echo "<option value=\"" . $options[$i] . "\"";
if($selectedChoice == $options[$i]) {
echo " selected";
}
echo ">" . $options[$i] . "</option>\n";
}
echo "</select>";
?>
</TD>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Shipping Method Three Price:</FONT></TD>
<TD><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">$ </FONT><INPUT TYPE="TEXT" NAME="ship_three" SIZE="6" VALUE="<?PHP echo $row["ship_three"]; ?>"></TD>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Current Inventory On Hand:</FONT></TD>
<TD><INPUT TYPE="TEXT" NAME="curr_inv" SIZE="10" VALUE="<?PHP echo $row["curr_inv"]; ?>"></TD>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Shipping Package Weight:</FONT></TD>
<TD><INPUT TYPE="TEXT" NAME="ship_weight" SIZE="6" VALUE="<?PHP echo $row["ship_weight"]; ?>"></TD>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Include In Specials Rotation:</FONT></TD>
<TD>
<?
$selectedChoice = $row["special"];
$options = Array("Yes", "No");
echo "<BR><select name=\"special\">\n";
for($i = 0; $i < sizeof($options); $i++) {
echo "<option value=\"" . $options[$i] . "\"";
if($selectedChoice == $options[$i]) {
echo " selected";
}
echo ">" . $options[$i] . "</option>\n";
}
echo "</select>";
?>
</TD>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Use Maximum Quantity Allowed For Purchases:</FONT></TD>
<TD>
<?
$selectedChoice = $row["max_qty_purchase"];
$options = Array("Yes", "No");
echo "<BR><select name=\"max_qty_purchase\">\n";
for($i = 0; $i < sizeof($options); $i++) {
echo "<option value=\"" . $options[$i] . "\"";
if($selectedChoice == $options[$i]) {
echo " selected";
}
echo ">" . $options[$i] . "</option>\n";
}
echo "</select>";
?>
</TD>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Large Image Name:</FONT></TD>
<TD><INPUT TYPE="TEXT" NAME="lg_image" VALUE="<?PHP echo $row["lg_image"]; ?>"></TD>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Maximum Quantity Allowed For Purchases:</FONT></TD>
<TD><INPUT TYPE="TEXT" NAME="max_qty_purch" SIZE="10" VALUE="<?PHP echo $row["max_qty_purch"]; ?>"></TD>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Small Image Name:</FONT></TD>
<TD><INPUT TYPE="TEXT" NAME="sm_image" VALUE="<?PHP echo $row["sm_image"]; ?>"></TD>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Product Options:<BR><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">[Depress the CTRL key to make multiple selections]</FONT></FONT></TD>
<td><select name="opt_display">
<?
// list of possible options comes from database
$cat_array=get_options();
foreach ($cat_array as $thiscat)
{
echo "<option value=\"";
echo $thiscat["opt_display"];
echo "\"";
// if existing book, put in current catgory
if ($edit && $thiscat["opt_display"] == $book["opt_display"])
echo " selected";
echo ">";
echo $thiscat["opt_display"];
echo "\n";
}
?>
</select>
</td>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Related Products:<BR><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">[Depress the CTRL key to make multiple selections]</FONT></FONT></TD>
<TD><INPUT TYPE="TEXT" NAME="rel_prods" VALUE="<?PHP echo $row["rel_prods"]; ?>"></TD>
</TR>
<TR>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Product Description:</FONT></TD>
<TD><textarea cols=20 rows=8 name=prod_description><? echo $row["prod_description"]; ?></textarea>
<TD WIDTH="150"><FONT FACE="VERDANA, ARIAL, HELVETICA" SIZE="1" COLOR="000000">Additional Confirmation Email Text:</FONT></TD>
<TD><textarea cols=20 rows=8 name=add_email_confirm><? echo $row["add_email_confirm"]; ?></textarea>
</TR>
<TR>
<TD WIDTH="375" ALIGN="RIGHT"><INPUT TYPE="IMAGE" SRC="images/admin/admin_submit_submit.gif" WIDTH="100" HEIGHT="23" BORDER="0" VALUE="SUBMIT"></TD>
<TD WIDTH="374" ALIGN="LEFT"><A HREF="login.php"><IMG SRC="images/admin/admin_submit_cancel.gif" WIDTH="100" HEIGHT="23" BORDER="0"></A></TD>
</TR>
</TABLE>
</FORM>
<?
do_html_footer();
?>
ASSOCIATED CATEGORY FUNCTION
function get_categories()
{
// query database for all categories to present in drop-down
$conn = db_connect();
$query = "select catid from categories";
$result = @($query);
if (!$result)
return false;
$num_cats = @mysql_num_rows($result);
if ($num_cats ==0)
return false;
$result = db_result_to_array($result);
return $result;
}