2013-02-04 195 views
-1

有人可以帮助,我试图从一行/所有clolumns移动所有的数据,并把它放到另一个表。将mysql数据从一个表复制到另一个表中?

因此,我有一个名为ptb_registrations的表,其中用户信息将被发送并存储,然后我希望将此数据复制到ptb_users中,然后从ptb_registrations中删除。

我在我的ptb_registrations表中名为id的列上有一个auto_increment,所以我可以使用它来确定要复制的行。

这个想法是,用户注册后,他们收到一封带有验证链接的电子邮件,点击该链接后,该链接以某种方式回应(可能通过电子邮件WHERE emial =),然后我的代码将继续并复制所有id 1的来自ptb_registrations的数据行并将其复制到该用户的ptb_users中。

这里是我开始的东西,任何人都可以告诉我,并指出我在正确的方向吗?

感谢

<?php 
    require_once("session.php"); 
    require_once("functions.php"); 
    require('_config/connection.php'); 

    $sql=mysql_query("INSERT INTO `ptb_users` SELECT * FROM `ptb_registrations`"); 

    ?> 

回答

1

为什么不直接在你的用户表中的“验证”列?注册时设为0,验证时设为1。

+0

因为然后我有成千上万的未经验证的用户我必须排序和删除。 –

+0

最好保留一条记录,所以如果他们尝试注册你告诉他们他们已经有,并且需要验证他们的账户。另外,你为什么期望这么多的用户不去验证他们的账户? – user1716672

0

你正在为你创造更多的工作。要检查用户是否存在/更改密码/编辑用户数据..您将不得不经常引用数据库中的两个表,并最终可能重复您的代码(代码重复=错误操作) -

以及删除未经验证的用户..您可以设置一个cronjob运行在每日,每周,每月的过程中,以自动删除未验证的用户...例如:

注册后3天仍未验证 - 电子邮件用户说明未验证账户将被删除

注册后1周,仍未验证 - 发出最终警告,说明其账户被删除的日期

2周 - DELETE FROM tabl WHERE Verified=0发出通知,表明他们的帐户已从您的系统中删除。

由于您没有提供您尝试过的深入代码,因此除了cronjob之外,我不会提供任何提示。

相关问题