Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.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在3个不同时间提交表单_Php_Forms_Cron_Crontab - Fatal编程技术网

使用PHP在3个不同时间提交表单

使用PHP在3个不同时间提交表单,php,forms,cron,crontab,Php,Forms,Cron,Crontab,对不起,如果不清楚的话,我会尽力把它说清楚 我有两个PHP文件,一个名为“Form.PHP”的文件有一个表单,另一个名为“Submit.PHP”的文件是表单的操作 将有一个名为“多少次:”的字段,其中包含选项(1,2,3),另一个名为“每:”的字段,其中包含选项(1分钟、3分钟、5分钟) 这个想法是,当用户选择(3次)和(5分钟)时,表单将每5分钟提交一次,并且在完成提交3次后停止 cron作业是这样做的吗?如果是,怎么做 提前谢谢你 您的问题有几种简单的解决方案。 最简单的方法是使用一个cro

对不起,如果不清楚的话,我会尽力把它说清楚

我有两个PHP文件,一个名为“Form.PHP”的文件有一个表单,另一个名为“Submit.PHP”的文件是表单的操作

将有一个名为“多少次:”的字段,其中包含选项(1,2,3),另一个名为“每:”的字段,其中包含选项(1分钟、3分钟、5分钟

这个想法是,当用户选择(3次)和(5分钟)时,表单将每5分钟提交一次,并且在完成提交3次后停止

cron作业是这样做的吗?如果是,怎么做


提前谢谢你

您的问题有几种简单的解决方案。 最简单的方法是使用一个cronjob和一个数据库

对于我推荐的数据库SQLite,它比mysql实现得更快,因为它没有设置,而且易于处理

数据库处理运行操作所需的所有数据,例如:“多少次:”和“每一次:”。cronjob每分钟运行一次,检查需要发送哪些表单

当然,数据库需要处理这些“额外”信息才能工作:

  • 表单作业的Id
  • 保存在表单中的信息
  • 计数器以保留表单已提交的次数
  • 表单的状态(如果仍处于活动状态或已完成提交)
  • 最后,您需要4个文件:

  • Form.php”-->收集信息并发送“Save.php
  • Save.php”-->接收信息并将其保存到数据库中
  • Check.php”-->每分钟运行一次,检查需要发送的表单,并为需要发送的每个表单调用“send.php
  • Send.php”-->接收并发送信息
  • 所有这些都可以在一个文件中完成,但这取决于您

    要将信息从check.php发送到send.php,在url中发送表单数据(使用GET捕捉)比使用POST方法更简单。

    最后,您必须添加cronjob来调用文件“Check.php”,每分钟只需通过控制面板或在命令行上手动设置一次cronjob。

    有几种简单的解决方案。 最简单的方法是使用一个cronjob和一个数据库

    对于我推荐的数据库SQLite,它比mysql实现得更快,因为它没有设置,而且易于处理

    数据库处理运行操作所需的所有数据,例如:“多少次:”和“每一次:”。cronjob每分钟运行一次,检查需要发送哪些表单

    当然,数据库需要处理这些“额外”信息才能工作:

  • 表单作业的Id
  • 保存在表单中的信息
  • 计数器以保留表单已提交的次数
  • 表单的状态(如果仍处于活动状态或已完成提交)
  • 最后,您需要4个文件:

  • Form.php”-->收集信息并发送“Save.php
  • Save.php”-->接收信息并将其保存到数据库中
  • Check.php”-->每分钟运行一次,检查需要发送的表单,并为需要发送的每个表单调用“send.php
  • Send.php”-->接收并发送信息
  • 所有这些都可以在一个文件中完成,但这取决于您

    要将信息从check.php发送到send.php,在url中发送表单数据(使用GET捕捉)比使用POST方法更简单。

    最后,您必须添加cronjob来调用文件“Check.php”,每分钟只需通过控制面板或在命令行上手动设置一次cronjob。

    使用AJAX和Javscript计时器。@JeremyHarris我不希望用户在完成之前坐在那里15分钟,我希望所有事情都发生在服务器上。您是否已经考虑过使用?@Reto感谢您的评论,我会查看它,希望这就是我想要的。使用AJAX和Javscript计时器。@JeremyHarris我不希望用户坐在那里15分钟直到它完成,我希望所有事情都能在服务器上发生。您是否已经考虑过使用?@Reto感谢您的评论,我会查看它,希望这就是我所寻找的。