Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.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如何通过POST发送一个安全的url,以便在PHP脚本完成后可以重定向回它来自的页面?_Php_Redirect_Post - Fatal编程技术网

PHP如何通过POST发送一个安全的url,以便在PHP脚本完成后可以重定向回它来自的页面?

PHP如何通过POST发送一个安全的url,以便在PHP脚本完成后可以重定向回它来自的页面?,php,redirect,post,Php,Redirect,Post,返回提交表单的页面的最佳方式是什么 例如,如果我通过POST将一些数据发送到“save data.php”,然后该文件又将发布的数据上传到数据库,那么如果url未知,我如何返回最初发送POST数据的页面 我不确定我解释对了 更多详情: 数据仅由管理员用户发布。我使用这个代码为一个可编辑的导航栏存储在数据库中。管理员可以编辑标签,然后将其存储。问题是,只要您以管理员身份登录,就可以从站点中的任何页面对其进行编辑。当您点击保存按钮(与导航栏位于同一页面上)时,它会将数据发布到一个php脚本,该脚本将

返回提交表单的页面的最佳方式是什么

例如,如果我通过POST将一些数据发送到“save data.php”,然后该文件又将发布的数据上传到数据库,那么如果url未知,我如何返回最初发送POST数据的页面

我不确定我解释对了

更多详情:


数据仅由管理员用户发布。我使用这个代码为一个可编辑的导航栏存储在数据库中。管理员可以编辑标签,然后将其存储。问题是,只要您以管理员身份登录,就可以从站点中的任何页面对其进行编辑。当您点击保存按钮(与导航栏位于同一页面上)时,它会将数据发布到一个php脚本,该脚本将插入/更新数据库。我只需要将用户发送回单击保存的页面。

您可以使用JavaScript执行此操作:

window.onload = history.go(-1);

这在PHP中是不可能做到的。你需要知道发送某人到那里的参考URL<代码>$\u服务器['HTTP\u REFERER']可能包含该引用,但不能保证发送该引用(某些防火墙和浏览器会删除引用头)。

您可以使用JavaScript执行此操作:

window.onload = history.go(-1);

这在PHP中是不可能做到的。你需要知道发送某人到那里的参考URL<代码>$\u服务器['HTTP\u REFERER']可能包含该引用,但不能保证发送(某些防火墙和浏览器会删除引用头)。

如果这是动态的,则可以传递一个隐藏的输入值:

<input type="hidden" name="return" value="myfile.php" />
在你的储蓄和罚款之后再加上

编辑
抱歉,刚刚注意到如果URL未知。你控制所有部分吗?您控制哪些部分以及控制到什么级别?我假设您不只是让每个人都将数据发布到URL?

如果这是动态的,您可以传递一个隐藏的输入值:

<input type="hidden" name="return" value="myfile.php" />
在你的储蓄和罚款之后再加上

编辑
抱歉,刚刚注意到如果URL未知。你控制所有部分吗?您控制哪些部分以及控制到什么级别?我假设您不只是让每个人都将数据发布到URL?

数据仅由管理员用户发布。我使用这个代码为一个可编辑的导航栏存储在数据库中。管理员可以编辑标签和链接,然后将其存储。问题是,只要您以管理员身份登录,就可以从站点中的任何页面对其进行编辑。当您点击保存按钮(与导航栏位于同一页面上)时,它会将数据发布到一个php脚本,该脚本将插入/更新数据库。我只需要将用户发送回单击保存的页面。使用$_SERVER['PHP_SELF']作为要重定向回的隐藏字段的值。由于您控制表单,因此不需要javascript。数据仅由管理员用户发布。我使用这个代码为一个可编辑的导航栏存储在数据库中。管理员可以编辑标签和链接,然后将其存储。问题是,只要您以管理员身份登录,就可以从站点中的任何页面对其进行编辑。当您点击保存按钮(与导航栏位于同一页面上)时,它会将数据发布到一个php脚本,该脚本将插入/更新数据库。我只需要将用户发送回单击保存的页面。使用$_SERVER['PHP_SELF']作为要重定向回的隐藏字段的值。由于您可以控制表单,因此无需使用javascript。正如@Emil Vikström所述,如果URL无法随表单一起传递,则
$\u服务器['HTTP\u REFERER']
是您的最佳选择。但是,如果可以,将URL与其他表单字段(隐藏字段)一起传递--使用JavaScript动态填充该字段的值(在提交表单之前抓取
window.location
)如果URL无法随表单一起传递,则是您的最佳选择。但是,如果可以,则传递URL和其他表单字段(隐藏字段)——使用JavaScript动态填充该字段的值(在提交表单之前抓取
window.location
)。