在页面上提交多个表单参考PHP

在页面上提交多个表单参考PHP,php,Php,我在一个页面中有一个表单。现在我将表单提交到同一个页面(使用post)。这部分工作得很好。但是当我刷新页面时,表单会再次提交。关于如何解决此问题的任何线索。执行标题重定向到同一页面或另一页面。执行标题重定向到同一页面或另一页面。您可以使用会话。如果会话中存在表单名称,则不会再次处理该表单 $_SESSION['form']['name_of_the_form'] = time(); 您可以使用会话。如果会话中存在表单名称,则不会再次处理该表单 $_SESSION['form']['name_o

我在一个页面中有一个表单。现在我将表单提交到同一个页面(使用post)。这部分工作得很好。但是当我刷新页面时,表单会再次提交。关于如何解决此问题的任何线索。

执行标题重定向到同一页面或另一页面。

执行标题重定向到同一页面或另一页面。

您可以使用会话。如果会话中存在表单名称,则不会再次处理该表单

$_SESSION['form']['name_of_the_form'] = time();

您可以使用会话。如果会话中存在表单名称,则不会再次处理该表单

$_SESSION['form']['name_of_the_form'] = time();

处理POST请求后重定向回同一页

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    # process the request ...

    # ... and redirect
    header('Location: page.php');
}

处理POST请求后重定向回同一页

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    # process the request ...

    # ... and redirect
    header('Location: page.php');
}

正如其他人所指出的,您可以通过修改发送回用户浏览器的头来使用HTTP重定向。PHP中的函数允许您执行此操作。请确保在输出任何内容之前执行此函数调用,否则它将失败。它可能看起来像下面这样

<?php
// some code to process the form data here
header('Location: page.php'); // redirect user to page.php

正如其他人所指出的,您可以通过修改发送回用户浏览器的头来使用HTTP重定向。PHP中的函数允许您执行此操作。请确保在输出任何内容之前执行此函数调用,否则它将失败。它可能看起来像下面这样

<?php
// some code to process the form data here
header('Location: page.php'); // redirect user to page.php

您可以使用重定向或使用form nonce避免重复可能的重复:,,…等…您可以使用重定向或使用form nonce避免重复可能的重复:,,…等…我正在尝试执行重定向,但问题是页面在页眉-正文-页脚中分开。因此,当我尝试重定向时,它会给我一个警告:页眉已发送到(header.php),指向我在页面中的页眉。如何处理这个问题?页眉必须在任何输出之前出现(即使只有一个空格也会导致该警告)。我强烈建议将页眉放在页面顶部(在一定条件下),但也可以事先打开输出缓冲。请注意,这会导致更高的CPU负载。我正在尝试重定向,但问题是页面在页眉-正文-页脚中分开。因此,当我尝试重定向时,它会给我一个警告:页眉已发送到(header.php),指向页面中的页眉。如何处理此问题?页眉必须在任何输出之前出现(即使只有一个空格也会引起警告)。我强烈建议将页眉放在页面顶部(在条件允许的情况下),但您也可以事先打开输出缓冲。请注意,这会导致更高的CPU负载。我正在尝试重定向,但问题是页面在页眉-正文-页脚中分开。因此,当我尝试重定向时,它会给我一个警告:页眉已发送到(header.php)指向页面中的页眉。如何处理?我正在尝试重定向,但问题是页面在页眉-正文-页脚中分开。因此,当我尝试重定向时,它会给我一个警告:页眉已发送到(header.php),指向页面中的页眉。如何处理?