发送两个POST Ajax请求,Server立即处理它们

时间:2014-09-03 21:56:39

标签: php ajax

我正在尝试将两个值发送到我的服务器以输入到同一行的数据库中,我遇到的问题是无法在一个请求中发送这两个值。所以我想要做的是在单独的请求中发送这两个值,但是立即在服务器上处理它们,这样我就可以将值作为一个条目添加到数据库中。我的php不是很强大,我不知道怎么做这个。可能吗?我该怎么做?

这是我到目前为止所拥有的:

<?php

$user = "user";
$pass = "pass";
$table = "database";


if(isset($_POST['currentUser']))
{
$userID = 'currentUser';
}

if(isset($_POST ['e.regid']))
{
$regid = 'e.regid';
}


if ($regid && $userID != null)
{
$con = mysqli_connect("localhost", $user, $pass);
mysqli_select_db($con, $table);
if (mysqli_connect_errno$con))
{
    echo "Error connecting to the DB: " . mysqli_connect_errno());
}
else
{
    "INSERT INTO gek_devices('regid', 'pin') VALUES ($regid, $userID)";
}
}

1 个答案:

答案 0 :(得分:2)

不,由于网络延迟和不可靠性,甚至都不保证两个请求都会到达服务器,更不用说在一分钟之内了,更不用说一旦处理完两个请求就可以运行代码了。在实践中,由于* nix上的默认Apache安装将预先执行10&#39;备用,因此机会超过90%,即两个请求甚至不会由服务器上的相同Apache进程处理。实例

如果您需要同时处理数据,则需要在同一请求中发送数据,这是保证atomicity的唯一方法。

你想要的解决方案是完全不可能的,但也是一个明显的XY problem。解决为什么你现在不能同时发送值而不是关注那之后的hacky变通方法。