Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.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+MySQL+会话事务_Php_Mysql_Session_Transactions - Fatal编程技术网

PHP+MySQL+会话事务

PHP+MySQL+会话事务,php,mysql,session,transactions,Php,Mysql,Session,Transactions,我正在开发一个应用程序,它将使用一个服务器来同步数据,这个服务器将使用php和一个mysql数据库 对于同步过程,我认为是一种三方沟通: 1-客户机将数据发送到服务器,服务器处理数据并用OK或ERROR回复客户机,此时服务器应开始事务。 2-如果接收确定,客户端只更新内部信息更新日期,并从数据库中删除一些行 3-客户端向服务器发送另一个请求OK或CANCEL,当服务器收到此新请求时,它提交或回滚事务 这可能吗?在一个请求中启动事务,在另一个请求中提交事务? 如果是,怎么做?会议 或者我应该用另一

我正在开发一个应用程序,它将使用一个服务器来同步数据,这个服务器将使用php和一个mysql数据库

对于同步过程,我认为是一种三方沟通:

1-客户机将数据发送到服务器,服务器处理数据并用OK或ERROR回复客户机,此时服务器应开始事务。 2-如果接收确定,客户端只更新内部信息更新日期,并从数据库中删除一些行 3-客户端向服务器发送另一个请求OK或CANCEL,当服务器收到此新请求时,它提交或回滚事务

这可能吗?在一个请求中启动事务,在另一个请求中提交事务? 如果是,怎么做?会议


或者我应该用另一种方式来实现这一点?

在php中,您不应该将对象存储在所需的sessioncitation中。所以我要做的是将数据存储到会话中,当您收到来自客户端的确认时,检索数据并组装querymysqli或PDO,这是您喜欢的


这将起作用,除非你需要使用数据库中的一些数据。如果是这样的话,我不知道怎么做,我想说这是不可能的。不记得了,但我认为php会在脚本结束时关闭DB会话,以防需要来自上一个数据库请求的附加数据,如插入id,对于PDO或MySQLi;您可以执行$PDOBJECT->lastInsertId;或者$mysqliObject->insert_id有两个不同的请求,lastInsertId或insert_id不会返回在另一个会话上插入的id。如果禁用自动清理功能,则可以使用Persistent连接,但我不建议这样做。可能重复: