PHP 和浏览器“后退”按钮 - 到底发生了什么

2023-12-01

假设我的 PHP 页面执行“真实”操作。
我所说的“真实”是指执行数据库操作、写入文件等,而不是仅仅发送 HTML。

当我点击 PHP 页面的“后退”按钮时,假设它是 GET。

  • 这是否意味着我的 PHP 代码不一定在所有浏览器上始终运行?

  • 如果我有一个图像,我想在每次请求该页面时刷新(尤其是在“返回”时),我应该如何处理?

是只有我一个人还是内心不喜欢 javascript 是正常的吗? (在我看来,它总是像是一个补丁,用于解决那些一开始就无法工作的事情,而且并不是每个人都让 javascript 工作)

我并不挑剔,但是可以认为 HTTP 级别的解决方案是最好的吗?

Thanks


通过 POST 加载的页面将导致浏览器要求用户重新提交信息以查看页面,从而导致该页面执行的操作再次发生。如果通过 GET 请求页面并且查询字符串中包含变量,则会发生相同的情况,但不会提示用户再次进行编辑)。

解决这个问题的最佳方法是使用POST/REDIRECT/GET 模式。我在一个关于的例子中使用了它处理我为 Authorize.Net 编写的付款。希望这能为您指明正确的方向。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 和浏览器“后退”按钮 - 到底发生了什么 的相关文章

  • 在 eclipse pdt 中同步时 - 比较 php 文件的版本时出现空白灰色窗口

    我已经安装了适用于 64 位 Linux 的 Eclipse PDT Helios SR1 GTK Ubuntu Maverick 全新安装 我添加了用于使用 Subversion 的 Subversive 插件 并安装了 SVNKit 1
  • 连接以逗号分隔的字符串,但如果字符串为空,则逗号不应出现在开头[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这个问题是由拼写错误或无法再重现的问题引起的 虽然类似的问题可能是on topic help on topic在这里 这个问题的解决方式不
  • 显示地址栏时的 100vh 高度 - Chrome Mobile

    I came across this problem a few times and was wondering if there was a solution to this problem My problem occurs on th
  • CSS悬停边框而不调整图像大小

    我想问一下 在不调整图像大小的情况下 我的悬停边框下方功能做错了什么 我已按照给出的指南进行操作here https css tricks com image rollover borders that do not change layo
  • orm和pdo的区别

    我对 ORM 和 PDO 之间的区别有点困惑 PDO是一种ORM吗 根据我的理解 ORM 基本上是一种数据映射 PDO 还提供了数据库数据的抽象 PDO 和 ORM 是两个完全不同的东西 PDO 是数据库访问抽象层的具体实现 它使您能够使用
  • 数据库字段中的空白不会被trim()删除

    我在 MySQL 的文本字段的段落开头有一些空格 Using trim var text field 在 PHP 中或TRIM text field MySQL 中的语句绝对不执行任何操作 这个空白可能是什么以及如何通过代码删除它 如果我进
  • 如何选择带有空格的类

    我如何选择一个类class boolean optional 我已经尝试过这个 boolean optional CSS boolean optional CSS 正如 Zepplock 所说 这实际上是一个属性中的两个类 boolean
  • 为什么音频自动播放在 Google Chrome 中不起作用?

    我正在尝试在页面刚刚打开时自动播放音频文件 我的浏览器是谷歌浏览器更新到最新版本 这是代码
  • 四列布局,无需媒体查询即可转换为单列

    我正在尝试创建一个四列布局 其中每列随着窗口的大小而增大和缩小 但每列都有最小宽度 当窗口太小而无法将所有四列放入单行时 它会转换到单个列 每个部分占据整个宽度 我无法使用 flex box 或 CSS 网格来做到这一点 我想在没有媒体查询
  • 通过 Composer 安装 Codeception 到 Yii2

    我在将 Codeception 安装到 Yii2 项目时遇到问题 1 下载composer到Yii2项目中 curl sS https getcomposer org installer php 2 尝试安装Codeception php
  • 更改导航栏悬停时 div 的背景图像

    我正在开发一个项目 我对 Javascript 很陌生 所以我想知道是否有 Jquery 代码或只是一个关于如何使背景图像在导航菜单悬停时更改的过程 例如将鼠标悬停在链接一上会将 div 的背景图像更改为图像 1 将鼠标悬停在链接二上会将
  • PHP file_get_contents() 和设置请求标头

    使用 PHP 是否可以发送 HTTP 标头file get contents 我知道您可以从您的php ini文件 但是 您是否还可以发送其他信息 例如HTTP ACCEPT HTTP ACCEPT LANGUAGE and HTTP CO
  • Twitter bootstrap 3 RC2 - IE8 中的导航不起作用

    我正在使用 Twitter Bootstrap 3 RC2 在页面顶部创建一个导航栏 除了在 IE8 中之外 该导航栏工作正常 在 IE8 中 就像浏览器变小一样 因此菜单会折叠以供移动视图使用 但这种情况并非如此 现在我知道 TB3 仍在
  • 不用AJAX,前台同步拖放文件上传?

    我有一个定期的网站
  • PHP cURL 代理带标头?

    我正在制作一个 PHP 图像代理脚本 我需要它不仅能够回显其请求的图像的内容 而且还能够以相同的方式重现图像请求的标头 我见过一个 另一个 但没有同时看到过 这些 cURL 选项让我感到困惑 我该怎么做 抱歉 我不确定你想要什么 这是从图像
  • 如何在 PHP 中验证电子邮件? [复制]

    这个问题在这里已经有答案了 如何使用 php5 验证输入值是有效的电子邮件地址 现在我正在使用这段代码 function isValidEmail email pattern a z0 9 a z0 9 a z0 9 a z0 9 a z
  • 使用 jQuery 将值发送到 $_GET

    我正在使用一个 PHP 脚本 该脚本正在通过 GET 等待两个值 我正在尝试使用 jQuery 传递这两个值 而这正是我不太擅长的地方 这是我得到的代码 有人能指出我正确的方向吗 谢谢 function xrate id rating aj
  • 将 IP 地址与 IPv6 块进行比较

    我使用 PHP 将用户 IP 地址与 IP 块列表进行比较 其中大多数是 IPv4 但其中一些是 IPv6 我从用户那里获得的 IP 地址始终与 IPv4 兼容 至少我是这么假设的 我将如何比较这个 这就是我现在正在使用的 function
  • password_verify 哈希值与密码不匹配

    我使用下面的代码生成了密码哈希 hash password hash test PASSWORD BCRYPT 然后我使用 255 个字符将其存储在数据库中 然后我尝试使用比较器来测试登录 但失败了 它只允许我使用我之前刚刚生成的几行哈希登
  • 在 Div 的两个顶角创建一个三角形,用边框划分

    通过遵循以下问题和答案 我能够在 div 的右上角获得一个三角形 Div 中的右上角三角形 https stackoverflow com questions 18531959 how to create triangle shape in

随机推荐

  • ListView 在 Metro 应用程序中添加更多项目?

    我有一个 Metro 应用程序 其中有一个列表视图 服务数据包含超过 100 个项目 最初 当我在我的页面中加载列表视图时 它必须仅显示 8 个项目加上 1 个更多相关项目 后来如果我单击更多项目 它需要向我的页面添加另外 9 个项目 总共
  • python Win32 保存

    我正在使用 python 打开一个 excel 文件并进行一些更改 然后需要保存它 除了保存部分之外 我可以完成所有事情 如何让 python 保存文件 如果我手动保存 我会收到弹出框 我可以单击 保存 但我不想手动单击 保存 我希望 py
  • 如何使用 go 1.11 和 Google App Engine 标准对私有 Go 模块进行身份验证

    我一直在更新我的整个 go gae 标准项目以使用 go 1 11 的模块 主目录结构 app yaml app go go mod go sum app go package main import bitbucket org myPri
  • 扩展 android:WindowTitle

    我希望延长android WindowTitle But parent android WindowTitle 不再适用于较新的 SDK 这是一种私人风格 有什么好的公共替代品parent android WindowTitle 读这篇文章
  • scala 中使用 App Trait 和 main 方法的区别

    有什么区别 object Application extends App println Hello World and object Application def main args Array String Unit println
  • Android 自定义选项菜单项

    每个人 我有一个问题要问 Android 的人 任何帮助或建议将不胜感激 所以我的问题是 我有 ActionBarCompat 的应用程序 在这个操作栏中我有很多不同的隐藏菜单项 只有当用户单击操作栏上的菜单按钮时才会出现 另外 我在操作栏
  • “IntVar”和“IntVar”实例之间不支持“>”

    我是一名新程序员 所以请对我宽容一些 我试图从用户那里获取 Entry 并将其转换为 int 然后假设用户输入一个数字 然后运行 while 循环 当我尝试在 while 循环 第 13 行 上运行此代码时 我收到以下错误代码 发生异常 I
  • 客户端证书和 NSURLSession

    好吧 我对 SSL 证书和身份验证的广泛奇迹还很陌生 所以我可能在这里做了一些非常明显错误的事情 但我正在尝试设置 NSURLSession 以从通过 SSL 网关代理的服务器下载文件 由于与我们正在构建的解决方案相关的原因 我们希望使用非
  • 如何解决无法将表名解析为 python sqlite 查询的问题?

    我正在制作一个 python3 程序 它使用带有多个表的 sqlite 数据库 我想创建一个选择器模块以允许我选择从哪个表中提取数据 我发现我无法使用表名的参数替换 如下所示 因此我正在寻找一些替代方法来完成此操作 c execute SE
  • 以编程方式转码 MPEG-2 视频

    我需要能够以编程方式将 mpeg 2 文件转码为 mp4 mp3 wmv rm 可选 和 flv 可选 并希望也能生成缩略图 我找到了 Java Media Framework 但坦率地说 它看起来相当糟糕 这将运行一个 Linux 服务器
  • 解析 Google 表格中的 JSON

    我是第一次使用 JSON 所以请原谅我缺乏知识 我正在尝试使用 JSON 文件来填充 Google 表格中的数据 我只是不知道正确的语法 如何格式化 JSON 函数以正确访问数据并停止返回错误 我正在尝试从这里提取数据 https eddb
  • 从 PHP 读取 Windows Installer(MSI 文件)属性

    我有一个 Windows MSI 文件 我需要以编程方式从中读取版本号 我唯一能看到这个版本的地方是Subject文件详细信息 如果我能以某种方式阅读全部内容Subject这很好 但是有什么方法可以从 PHP 获取这个吗 PHP 正在 II
  • 在快速附加到电子邮件之前压缩视频大小

    之前 我曾询问过如何附加视频然后通过电子邮件发送 现在它工作了 经该网站的一些朋友推荐 我发现了一个新问题 即视频大小非常大 并且大于 iOS 中使用默认电子邮件应用程序发送的相同视频文件 请告诉我如何在附加到电子邮件应用程序之前压缩视频文
  • Spring Cloud Kafka Streams 中的错误处理

    我正在使用 Spring Cloud Stream 和 Kafka Streams 假设我有一个处理器 它是一个将字符串的 KStream 转换为 CityProgrammes 的 KStream 的函数 它调用 API 按名称查找城市 并
  • 使用 protobuf-net 获取 ProtoGen

    我正在尝试使用 protobuf 序列化一些类 我使用 NuGet 安装了 protobuf net 用属性正确修饰了我的代码 一切都运行良好 然而 最终消息将在 C 中创建 但在其他环境中使用 因此我需要从 C 创建 proto 文件 或
  • 将功能分支重新设置为另一个功能分支

    我正在开发两个 私有 功能分支 a b c lt Master d e lt Branch1 f g lt Branch2 在这些分支上工作了一段时间后 我发现我需要对 Branch1 中的 Branch2 进行更改 我想将 Branch2
  • 在 ASP.NET 中锁定缓存的最佳方法是什么?

    我知道在某些情况下 例如长时间运行的进程 锁定 ASP NET 缓存非常重要 以避免另一个用户对该资源的后续请求再次执行长时间进程而不是访问缓存 在 C 中实现 ASP NET 缓存锁定的最佳方法是什么 这是基本模式 检查缓存中的值 如果可
  • Pyside 安装失败(Python 2.7.4)

    我刚刚升级到 Ubuntu 13 04 测试版 尝试使用 pip 将 pyside 安装到 Virtualenv python 2 7 4 时遇到错误 error Failed to locate the Python library us
  • 在 C 中制作 shell 时正确的管道方式是什么

    我正在尝试创建自己的 shell 我相信我已经正确完成了分叉 但我不知道如何正确进行管道传输 任何帮助或提示将不胜感激 基本上我的管道无法工作 我花了很长时间试图找出如何让它们在进程之间正确传输数据 include
  • PHP 和浏览器“后退”按钮 - 到底发生了什么

    假设我的 PHP 页面执行 真实 操作 我所说的 真实 是指执行数据库操作 写入文件等 而不是仅仅发送 HTML 当我点击 PHP 页面的 后退 按钮时 假设它是 GET 这是否意味着我的 PHP 代码不一定在所有浏览器上始终运行 如果我有