Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 预订过程中的电子邮件Id捕获_Php_Javascript_Jquery_Prototype - Fatal编程技术网

Php 预订过程中的电子邮件Id捕获

Php 预订过程中的电子邮件Id捕获,php,javascript,jquery,prototype,Php,Javascript,Jquery,Prototype,我有一个html页面,其中包含注册表单字段,如电子邮件地址等。注册过程中有五个步骤。在第一步中,表单有一个电子邮件地址字段 我想要的是,如果用户出于某种原因输入一个电子邮件地址并离开表单,经过某种时间(比如15分钟后),我希望捕获该电子邮件地址并将其发送到服务器。因为他们中的一些人中途离开了预订流程。我想捕捉他们,即使他们没有完成预订过程。我只是想用定时器之类的东西来捕获那个电子邮件地址。我使用了onblur()事件并编写了一些代码。但是我需要一些帮助来解决这个问题 提前感谢,您需要返回电子邮件

我有一个html页面,其中包含注册表单字段,如电子邮件地址等。注册过程中有五个步骤。在第一步中,表单有一个电子邮件地址字段

我想要的是,如果用户出于某种原因输入一个电子邮件地址并离开表单,经过某种时间(比如15分钟后),我希望捕获该电子邮件地址并将其发送到服务器。因为他们中的一些人中途离开了预订流程。我想捕捉他们,即使他们没有完成预订过程。我只是想用定时器之类的东西来捕获那个电子邮件地址。我使用了onblur()事件并编写了一些代码。但是我需要一些帮助来解决这个问题


提前感谢,

您需要返回电子邮件地址的ajax调用。这并不完美,但可以让你大致了解你需要做什么

// When the document is loaded do something.
$(document).ready(function(){
    // Do something after 5 minutes (300000 seconds)
    setTimeout('captureEmail',300000)
});

function captureEmail()
{
  // Serialize the form data and send to captureEmail.php
  $('#formId').ajax({
    url: "captureEmail.php",
    data: this.serialize(),
    success: function(){
      $(this).addClass("done");
    }
  });    
}

您需要返回电子邮件地址的ajax调用。这并不完美,但可以让你大致了解你需要做什么

// When the document is loaded do something.
$(document).ready(function(){
    // Do something after 5 minutes (300000 seconds)
    setTimeout('captureEmail',300000)
});

function captureEmail()
{
  // Serialize the form data and send to captureEmail.php
  $('#formId').ajax({
    url: "captureEmail.php",
    data: this.serialize(),
    success: function(){
      $(this).addClass("done");
    }
  });    
}

实际上有几十种方法可以做到这一点

如果他们从向导的第一步转到第二步,您可以将电子邮件地址捕获到服务器中的一个表中。我会按照一个表的思路做一些事情,这个表有电子邮件地址、注册的唯一id和时间戳,然后你可以有一个服务来轮询表并将其与完成的注册表进行比较,然后将这些电子邮件存储在某处

另一个选项是javascript函数,该函数在页面退出或浏览器卸载时触发一个更新方法,该更新方法对表进行插入

或者您可以使用jquery/ajax,这样当他们离开电子邮件字段时,它会验证这是一种有效的电子邮件格式,如果是这样,就会触发一个更新方法或三者的某种组合


首先,您需要决定在哪些点捕获电子邮件地址,然后查看哪些机制对您开放。i、 e.从一步走到下一步时的帖子。或者在页面上触发事件时使用ajax/jquery

实际上有几十种方法可以做到这一点

如果他们从向导的第一步转到第二步,您可以将电子邮件地址捕获到服务器中的一个表中。我会按照一个表的思路做一些事情,这个表有电子邮件地址、注册的唯一id和时间戳,然后你可以有一个服务来轮询表并将其与完成的注册表进行比较,然后将这些电子邮件存储在某处

另一个选项是javascript函数,该函数在页面退出或浏览器卸载时触发一个更新方法,该更新方法对表进行插入

或者您可以使用jquery/ajax,这样当他们离开电子邮件字段时,它会验证这是一种有效的电子邮件格式,如果是这样,就会触发一个更新方法或三者的某种组合

首先,您需要决定在哪些点捕获电子邮件地址,然后查看哪些机制对您开放。i、 e.从一步走到下一步时的帖子。或者在页面上触发事件时使用ajax/jquery

我会用“thenetimp”的答案,但会改变这些东西

--
setTimeout
应该启动电子邮件文本框的
onkeydown
,因为在进行ajax调用之前,他会知道一些数据在那里

--最好在发送数据之前使用Regex检查电子邮件的有效性

每5分钟调用一次ajax,不管数据是否存在,也不管是否检查输入的数据是否是完整的电子邮件id,这不仅会让服务器收到大量请求,而且最终可能会存储垃圾值,如
ksanads@
和其他东西

虽然,您可以在服务器本身中获取id后检查id的有效性,但最好从客户端获取有效数据,而不是用可能无效的数据重载服务器

我会用“thenetimp”的答案,但会改变这些东西

--
setTimeout
应该启动电子邮件文本框的
onkeydown
,因为在进行ajax调用之前,他会知道一些数据在那里

--最好在发送数据之前使用Regex检查电子邮件的有效性

每5分钟调用一次ajax,不管数据是否存在,也不管是否检查输入的数据是否是完整的电子邮件id,这不仅会让服务器收到大量请求,而且最终可能会存储垃圾值,如
ksanads@
和其他东西


虽然,您可以在服务器本身中获取id后检查id的有效性,但最好从客户端获取有效数据,而不是用可能无效的数据重载服务器

ajax,那么您尝试了什么呢?“我使用了onblur()事件并编写了一些代码”-您能展示这些代码吗?您需要帮助解决的问题是什么?谢谢您的回复。我有一些使用ajax的想法。但我想在他输入电子邮件地址后确定一段时间。如果您在原型框架中给出解决方案,它将对我有很大帮助。$('customer_email_address')。观察('blur',function(event){element=event.element(),If(element.value!=''){//执行一些时间函数,例如15分钟后,一些函数将自动启动})@user1049997如果您的新用户是stackoverflow,则接受答案与发布问题一样重要。。看看哪个答案适合您的需要,或者修复您的问题并接受它,每个答案旁边都有一个勾选标记..ajax,那么您尝试了什么?“我使用了onblur()事件并编写了一些代码”-您能展示这些代码吗?您需要帮助解决的问题是什么?谢谢您的回复。我有一些使用ajax的想法。但我想在他输入电子邮件地址后确定一段时间。如果您在原型框架中给出解决方案,它将对我有很大帮助。$('customer\u email\u address')。观察('blur',函数(event