繁体   English   中英

POST文件可以处理多个请求吗?

[英]can a POST file handle multiple requests?

我有一个处理所有POST请求的文件user_submit.php。 我正在做的是我正在通过jQuery POST方法发送小整数值。 这些整数值一次发送一次,大约10次。

我想做的是我想将所有这些值加起来,并在最后一步之后提供最终结果。

所以我在做:

$score = intval($_POST['score']);
$total = $total+$score;
echo $total;

但它无法将所有值加起来。 我发送第二个值后,文件便会忘记第一个值。 我的意思是第一个值不会存储在$ total中供第二个请求使用。

我该怎么办?

之所以存在此问题,是因为您对PHP(以及其他基于Web的语言)的整体工作方式有错误的理解。

完成每个PHP请求后,将关闭应用程序,将杀死所有变量,依此类推。因此,每当您的POST请求完成时,都会重置$total变量。

为了解决此限制,PHP具有会话处理机制,该机制允许您在会话范围内存储变量,从而将变量保留在请求之间,但允许为每个用户唯一地设置变量。

我建议您进行修改,使其使用内置的PHP 会话处理机制

<?php
$score = intval($_POST['score']);
$_SESSION['total'] = isset($_SESSION['total']) ? $_SESSION['total']+$score : $score;
echo $_SESSION['total];

您可以在PHP手册中找到会话变量用法的更多示例。

您将需要将$total存储在php端的$_SESSION变量中,否则将在每次请求时重新创建它。

或者,您可以通过ajax传递分数和当前总数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM