何らかの理由でうまくいかないような更新ステートメントがあります。MySQL UPDATEの問題
else if (isset($_POST['save'])) {
$query = "UPDATE assignments
SET expdate = '$expdate',
dispdate = '$dispdate',
duedate = '$duedate',
name = '$name',
cat1 = '$cat1',
cat2 = '$cat2',
cat3 = '$cat3',
schoolid = '$schoolid',
classid = '$classid',
public = '$public',
tags = '$tags',
description = '$description',
symbol = '$symbol'
WHERE id = '$assignmentid'
AND teacherid = '$uid'";
echo $query;
mysql_query($query);
}
私は多く試しましたが、行を更新するようには思えません。 echo $query;
がクエリを出力するので、関数が実行されていることがわかります。
変数が解析された後、特定の文字列は次のとおりです。
UPDATE assignments
SET expdate = '1325401200',
dispdate = '1293865200',
duedate = '1325401200',
name = 'Test 7',
cat1 = '138',
cat2 = '0',
cat3 = '0',
schoolid = '1',
classid = '33',
public = '1',
tags = 'New Vista High School,,80302,Patrick,Turmala,Test 7,,,138,No sub-categories,No sub-categories,test7,2012,testNew Vista High School,,80302,Patrick,Turmala,Test 7,,,138,0,0,teste,2012,testes',
description = 'Test 7',
symbol='teste'
WHERE id = '21'
AND teacherid = '538'
それは構文エラーですか?何が起こっている?
誰にも感謝します。
行のIDが21で、教師IDが538ですか。 –
'mysql_query()'の後に 'mysql_error()'をエコーします。構文エラーの場合、それは明白になります。 –
また、MySQL DATETIME型の3つの日付列か、PHPからUNIXのタイムスタンプを受け付けるINTですか? –