检查两个ID是否相同

时间:2011-04-17 21:31:45

标签: php sql algorithm

我在网站上添加了一项功能,可以显示访问者访问过用户个人资料的内容。表示此表的表包含用户配置文件的ID和访问配置文件的用户的ID。

显然,显示有人访问过他们自己的个人资料是毫无意义的,所以我修改了PHP代码来检测这个。与此同时,写了一些数据。这不是问题,因为它只代表少数用户,我可以手动编辑信息。

我的问题如下。在假设的情况下,我必须为更多数据做同样的事情,找到id1 = id2的行并删除它们的好方法是什么?

3 个答案:

答案 0 :(得分:3)

DELETE 
  FROM table
 WHERE id1 = id2;

答案 1 :(得分:2)

DELETE FROM `profiletracking` WHERE `visitor_id` = `profile_id`;

答案 2 :(得分:1)

如果你需要删除它,harakiri的查询很好,但我有一个问题,为什么要首先添加记录?随着时间的推移,您的网站会变得更大,事情可能会变得复杂。

我建议你不要首先将它记录到数据库中。您可以采用更短的方式执行更多操作和查询。

<?php
// Get ID of profile owner;
/* do your query here */
if ($_SESSION['id'] != $profileOwner['user_id']) {
// add it to your database
}
?>

我相信这种方法更优雅,更有用,考虑到将来您的网站可能会变得更大,您可能需要再次检查您的代码。

请不要忘记这些事情可能会让人头疼。这对程序员来说是一个致命的错误。一开始,许多人认为,现在好了,这就是诀窍,为什么要更多地打扰编码呢?随着时间的推移,您将添加越来越多的代码,以后您可能会迷失自己。一旦您的访客/客户开始抱怨开放页面缓慢,最终编码错误,那就太晚了。