为什么我不能在POST中使用#(Number Sign)作为值(php页面)

1 php post http-post

我有一个php项目,我必须将文件名作为POST请求传递给web服务器中的文件.但是当我传递包含#(Number Sign)的文件名时,它无法获得正确的文件名,从而产生错误.

这是我简单的PHP脚本

<?php
$file = $_GET["file"];
if (!unlink("upload/".$file))
  {
  echo ("Error deleting $file");
  }
else
  {
  echo ("Deleted $file");
  }
?>
Run Code Online (Sandbox Code Playgroud)

Que*_*tin 5

因为:

  • 你试图$_GET从不读$_POST
  • #在URI中具有特殊含义,必须进行百分比编码,就%23好像要将其表示为数据一样