我有一个php程序,我想在某些列中插入值。 这是我的桌子。
form_no | fullname | january | february | march | april | may | june | july
11111 smith, john
这样做的正确查询代码是什么?
以及检查单元格是否已包含值的正确方法?
原始表:https://drive.google.com/file/d/0B99TeByt30n2eHdLM0FER210cWM/edit?usp=sharing
这是我的代码,我也尝试检查该单元格是否已有值。
$value_result = mysql_query("SELECT january FROM table_2014 WHERE form_no = '$formnumber'");
$value_rownum = mysql_num_rows($value_result);
if (!$value_result) {
die(mysql_error());
}
if ( $value_rownum > 0 ) {
echo "Already contributed!";
} else {
$sql = "UPDATE `table_2014` SET january = '$contri_amnt' WHERE form_no = '$formnumber'";
if (!mysql_query($sql,$con)) {
die('Error: ' . mysql_error());
}
}
答案 0 :(得分:1)
即使1月为NULL,你仍会得到一行,所以计算行会给你1,你永远不会更新它。
您需要使用mysql_fetch_assoc或mysql_fetch_object来检查结果是否实际具有值。 或者,将您的查询更改为
SELECT 1月从table_2014 WHERE form_no ='$ formnumber'和1月IS NOT NULL