我在数据库中创建了一个表(mysql),我编写了一个代码,用于在数据库中插入数据,使用php.values正确插入。我将状态列值设置为deactive。当用户在此时创建时,我们向用户发送邮件以激活链接,表示我的网站,然后状态列必须更改为活动状态。
my db table contains the following columns
name,email,pwd,status,lastlogin,security qun,ans
当用户在那段时间创建时我将状态设置为deactive.in那时我想发送邮件(在这封邮件中,我想将链接发送到他们的帐户)给用户以激活他们的帐户,然后只有当用户打开邮件时,用户才会进入下一个进程。点击该链接,状态列必须在数据库中更改为活动状态。我可以这样做,任何人都帮助我..
答案 0 :(得分:0)
您可以创建名为 activation_code 的列,向具有链接的用户发送电子邮件,其中包含 activation_code 。像www.example.com/active.php?activation_code=AABBCCDDEEFF这样的链接,当用户点击此链接时,您可以获得 activation_code ,在数据库中找到用户并更改状态。您还可以创建列 activation_expires ,其中包含激活码过期的日期。
答案 1 :(得分:0)
解决问题的一种方法是:
将字段'status'设为varchar not int。
当您第一次插入用户信息时,请创建一个随机字符串并将其插入状态字段。
说你创建的随机字符串是'lka342lkjasd8234kl2324ljklj2'。发送带有字符串的链接作为参数。
在脚本中单击链接时,检查验证字符串是否与状态表中的值匹配。
如果匹配,则显示消息,表明其帐户已经过验证,并将字段值更改为1(1表示有效帐户)
如果字符串不匹配,则显示消息,验证链接错误。
以另一种方式,您可以创建另一个表来存储验证字符串。并使状态变为整数。最初设置为0并在验证时将其设为1,并使用新表检查验证。