1

データが投稿されたときに値をDBに挿入するページがあります。

事前にDBからすべての値の合計を取得してから、値を挿入し、挿入された値からSUMを取り除こうとしていますか?

$totalquery = mysql_query("SELECT SUM(bill) FROM `outgoings` WHERE outgoings.user_id = '$uid'") or die(mysql_error());
$totalresult = mysql_fetch_array($totalquery);          
$uid = $_SESSION['oauth_id'];
$id = $_POST['col-id'];
$sanitized_monthly_income = mysql_real_escape_string($_POST['monthly-income']);
mysql_query("INSERT INTO income (id, user_id, monthly_income) VALUES ('$id', '$uid', '$sanitized_monthly_income') ON DUPLICATE KEY UPDATE monthly_income = VALUES(monthly_income)");
echo $sanitized_monthly_income - $totalresult["SUM(bill)"];

これは私が受け取るエラーです

注意: 未定義の変数: update_salary.php の 18 行目の uid

4

1 に答える 1

4

You're using $uid before it is assigned:

 $totalquery = mysql_query("SELECT SUM(bill) FROM `outgoings`
                            WHERE outgoings.user_id = '$uid'") or die(mysql_error());
 #                                                     ^^^^
 # then later ...

 $uid = $_SESSION['oauth_id'];

You probably need to move the assignment above the line where you try to access the value.

于 2012-04-27T20:47:30.097 に答える