2011-06-15 83 views
0

我正在带一个PHP文件的日历提要,我需要将它与我的数据库进行比较。如果$lastEdited变量与数据库中的不同,我需要更改记录。我对SQL很陌生,所以我不知道该怎么做。我只是将Date_Edited设置为VARCHAR,所以我只需要比较字符串。我有这样的:如果一个变量发生了变化,我该如何替换记录?

$query = "SELECT * FROM myTable WHERE Event_ID='$id'"; 
    $result = mysql_query($query); 

    if (!mysql_num_rows($result)) { 
    mysql_query("INSERT INTO myTable (Event_ID, Date_added, Date_edited, Title) 
    VALUES ('$id', '$dateAdded', '$lastEdited', '$title')"); 
    } 

如何比较$lastEditedDate_edited和更改行,如果他们有什么不同?

+0

你想比较$ lastEdited到Date_Edited或DATE_ADDED – Balanivash 2011-06-15 05:36:09

+0

Date_Edited ....哎呀编辑的错误 – Joel 2011-06-15 05:39:56

+0

但我建议你使用时间戳来存储日期而不是VARCHAR。 – Balanivash 2011-06-15 05:45:02

回答

1

你需要做的是这样

$row = mysql_fetch_array($result, MYSQL_ASSOC); 

if($lastEdited != $row['Date_added']){ 
    # run update query 
    mysql_query("update myTable set 
     // here insert all update fields you need like 
     Date_added = '$dateAdded', Date_edited = '$lastEdited' , Title = '$title' 
     WHERE Event_ID='$id' "); 

} 
+0

hmm。我似乎无法得到这个工作。 (顺便说一句,我做了上面的错误 - 我想比较$ lastEdited与Date_edited),但我仍然没有得到这个为我工作。你想要在我有那里的其他条件之下? – Joel 2011-06-15 05:44:08

+0

啊 - 终于明白了。非常感谢! – Joel 2011-06-15 06:01:59

0

您可能想要使用UPDATE语句。

相关问题