所以我想知道PHP是如何/在文件读写方面有某种互斥的。
以下是我打算如何使用它:
我正在使用的网站利用需要离开服务器的付款服务,这使得难以处理表单提交,这样在从支付服务返回之前,表单不会被提交到数据库中。信息可以通过支付服务传递,并在另一端反刍。但是,可以传递最少的信息。
我对解决方案的想法:
在将注册传递给支付服务之前,处理并将sql语句写入文件中,每组语句引用由某个令牌分隔的注册。
在返回时根据您通过支付服务发送的信息查找条目,执行语句并从文件中删除注册块。
改述这个问题:
- 问题是 - 在这种情况下,我需要在文件上互斥,如果是这样,我将如何实现它?这可以锁定多种语言吗? (支付服务需要返回到cgi / perl脚本 - 尽管我可以包含实际处理的php脚本)
- 我将如何运行并执行SQL语句(最好是在perl中)?
- 我的解决方案是否真的很好?
谢谢,
特拉维斯
答案 0 :(得分:0)
PHP和Perl都支持flock()
。
然而,更好的方法是使用数据库。您的数据库表可以有一个processed
列,用于指示付款是否已处理完毕。当您将请求发送到付款服务时,请添加processed = 0
的记录。返回注册后,使用processed = 1
更新表格。