首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

表单操作中的相对url不能解释php,而完整的url可以。为什么?

在表单操作中,相对URL和完整URL都可以用于指定表单提交的目标地址。相对URL是相对于当前页面的路径,而完整URL是包含了协议、域名、路径等完整信息的URL。

相对URL不能解释PHP是因为相对URL只包含了路径信息,没有包含域名和协议等信息。当表单提交时,浏览器会将相对URL发送给服务器,服务器会根据当前页面的URL和相对URL拼接成完整的URL。但由于相对URL没有包含域名信息,服务器无法确定表单提交的目标地址,因此无法解释其中的PHP代码。

而完整URL包含了协议、域名、路径等完整信息,服务器可以直接解析其中的PHP代码并执行相应的操作。完整URL可以确切地指定表单提交的目标地址,服务器能够正确地解析其中的PHP代码并执行相应的逻辑。

总结起来,相对URL不能解释PHP是因为相对URL缺少了域名和协议等信息,服务器无法确定表单提交的目标地址;而完整URL包含了完整的信息,服务器可以直接解析其中的PHP代码并执行相应的操作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

学习PHP中的URL相关操作函数

学习PHP中的URL相关操作函数 在日常的业务开发过程中,我们经常会有处理 URL 链接的需求,所以今天学习的函数其实都是大家经常会使用的一些函数。...这两个函数估计是大家使用最多的函数了。urlencode() 就是用于 URL 的编码操作,可以看到,我们准备好的链接已经被编码成了包含各种百分号的内容。...特别是对于中文字符来说,如果是 GET 方式这种在链接中的中文参数,编码之后的内容就会让链接变得非常长。urldecode() 则是相对应的解码功能的函数,可以把编码过的链接解码回原始的状态。...URL 解析操作 除了对于 URL 链接中的字符进行编解码之外,解析链接参数也是我们经常会使用的功能。...测试代码: https://github.com/zhangyue0503/dev-blog/blob/master/php/2021/01/source/9.学习PHP中的URL相关操作函数.php

2.5K21

CTF—WEB基础篇

收集表单数据: 关于这一点,表单是编程常用的数据输入界面。表单提交时通常使用get或者post两种方法将数据发送给php程序脚本进行处理。...处理服务器端文件系统: 利用文件系统操作函数,操作服务器中的目录或文件。包括打开、编辑、复制、创建、删除和文件属性等操作。 编写数据库支持的网页: 其实就是利用php脚本运行来与数据库进行交互的过程。...GET与POST都有自己的语义,不能随便混用。 据研究,在网络环境好的情况下,发一次包的时间和发两次包的时间差别基本可以无视。...userID=1&passwordID=123456#OK 从上面的URL中不难看出,一个完整的URL包括以下几部分: 协议部分:该URL的协议部分为“http:”,这代表网页使用的是HTTP协议。...一个URL中,也可以使用IP地址作为域名使用 端口部分:跟在域名后面的是端口,域名和端口之间使用“:”作为分隔符。

1.5K20
  • LFI-Labs 完整训练

    这里以 php://input 以及 data:// 为例,他们都可以直接将自己所带入的数据流当作读取到的数据流,其中 php://input 的数据放在数据包中以 POST 方式提交,而 data:/...,而作者提供的容器貌似直接给到 PHP 7.0 去了,所以这个环境下 %00 截断的方法显然就不能用了。...那其实主要还是考虑前置路径 includes/ 的影响,此时我们只能使用相对路径来包含文件,而至于 php 后缀名,通过具体文件来决定是否使用空字符截断即可。.../HDR-1/blue.php%00 在警告中网页路径都已给出,因此可以很容易的访问靶机中的一些其他文件,如下笔者就通过相对路径成功访问到 D 盘根目录下的 h-t-m.txt 文件了。...首先通过日志文件路径尝试访问该文件,确认可以访问后则在 URL 中构造一句话木马并访问,由于错误的 URL 会造成报错,此时木马便成功写入该日志文件中了。

    2.7K30

    iframe跨域应用 - 使用iframe提交表单数据

    首先我们要知道,网站的数据是存放在服务器上的,而当一个网站很大型,拥有很多的数据时,通常会进行分类,然后将不同类的内容放置在不同的子域名中。...而MD5就是加密方式中的一种。 注册时:会获取到当前表单内容,之后进行MD5加密,最后再数据库中保存处理后的密码。...但是作为用户的我们,也尽可能的避免掉一些问题吧~ iframe提交表单数据 说完了前面的需要了解的东西,我们进入iframe的实例操作吧~!...功能需求 在http://A.h5course.com中,进行用户的注册(填写表单),需要将数据提交到http://B.h5course.com的addUser.php中。...JS代码如下(对于这个步骤中的详细介绍,我们之前的文章中已经做了详细的解释,想要了解的可以发送“iframe跨域”到“HTML5学堂”公众号) var iframeJquery = null; function

    5.3K50

    snoopy(强大的PHP采集类) 详细介绍

    Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单,可以用来开发一些采集程序和小偷程序,本文章详细介绍snoopy的使用教程。...$URI参数是被抓取网页的URL地址。 抓取的结果被存储在 $this->results 中。...默认情况下,相对链接将自动补全,转换成完整的URL。 submit(URI,formvars) 本方法向URL指定的链接地址发送确认表单。formvars是一个存储表单参数的数组。...默认情况下,相对链接将自动补全,转换成完整的URL。...从服务器返回的头信息 $maxlength 最长返回数据长度 $read_timeout 读取操作超时 (requires PHP 4 Beta 4+) 设置为0为没有超时 $timed_out 如果一次读取操作超时了

    2.7K21

    WEB安全Permeate漏洞靶场挖掘实践

    为什么这么做呢,因为觉得如果代码不能运行其实很多漏洞是无法光从代码层面发现问题的. 而代码能运行起来,其实不仅能验证问题,也可以从系统的业务功能来找出更多问题....这个时候我们可以初步的得出结论,这个地方可能存在SQL注入问题,但是还不能肯定,要肯定这个地方是否存在注入问题,我们这样深入去验证一下,可以使用参数值 5' or '1'='1 来进行验证,得到URL地址如下...先来一个最简单的搜索页吧,在导航栏有一个搜索框,我首先在搜索框中输入test吧,得到URL地址如下 http://permeate.localhost/home/search.php?...bk=5 在这个页面中可以看到有一个发帖的表单,我们主要看一下表单有没有token令牌,如果没有的话,那就可能存在CSRF的漏洞问题,通过浏览器的审查元素截图如下 ?...在页面中确实没有存在token信息,因此我们可以初步得出结论,这个地方存在CSRF的可能,现在需要验证一下, 在验证的时候我们需要制定CSRF有GET型和POST型,get型利用起来相对简单很多,而在这个地方表单提交虽然是通过

    1.8K30

    【Java 进阶篇】Java Response 重定向详解

    处理用户登录后的跳转。 重定向可以是临时的或永久的。临时重定向(HTTP状态码为302)通常用于暂时将用户导向另一个地址,而永久重定向(HTTP状态码为301)则表示资源已永久移动到新的URL地址。...处理表单提交后的跳转:当用户提交表单数据后,可以将其重定向到感谢页面或显示提交结果的页面。 处理旧URL的跳转:如果网站的URL结构发生变化,可以使用重定向来指导用户访问新的URL。...简化URL:使用重定向可以创建简洁的URL,同时保持底层页面的路径隐藏。 3. 如何在Java中执行重定向? 在Java中,你可以使用HttpServletResponse对象来执行重定向操作。...绝对路径重定向 绝对路径重定向是指将用户重定向到完整的URL地址,而不是相对于当前请求的URL。这通常用于将用户导向不同的Web应用程序或不同的服务器。...使用绝对路径重定向的方法是response.sendRedirect(),你需要提供完整的URL地址。

    1.5K30

    HTTP详解(2)-请求、响应、缓存

    URL完整地指定了要访问的网络资源,通常只要给出相对于服务器的根目录的相对目录即可,因此总是以“/”开头,最后,协议版本声明了通信过程中使用HTTP的版本。...我们可以使用GET方法来提交表单数据,用GET方法提交的表单数据只经过了简单的编码,同时它将作为URL的一部分向服务器发送,因此,如果使用GET方法来提交表单数据就存在着安全隐患上。...例如: Http://localhost/login.php?username=aa&password=1234 从上面的URL请求中,很容易就可以辩认出表单提交的内容。(?...GET方式取值,如php可以使用_GET来取得变量的值,而POST方式通过_POST来获取变量的值。...(3)HEAD HEAD 方法与 GET 方法几乎是相同的,它们的区别在于 HEAD 方法只是请求消息报头,而不是完整的内容。

    2.3K30

    PHP经典面试题目汇总(上篇)

    ,然后再进行操作,而单引号则不需要判断) 2、常用的超全局变量(8个) $_GET ----->get传送方式 $_POST ----->post传送方式 $_REQUEST ----->可以接收到get...、GET、PUT、DELETE,与其比不可少的URL的全称是资源描述符,我们可以这样理解:url描述了一个网络上资源,而post、get、put、delegate就是对这个资源进行增、删、改、查的操作!...3.1表单中get和post提交方式的区别 get是把参数数据队列加到提交表单的action属性所指的url中,值和表单内各个字段一一对应,从url中可以看到;post是通过HTTPPOST机制,将表单内各个字段与其内容防止在...可以比CGI或者Prel更快速去执行动态网页,与其他变成语言相比,PHP是讲程序嵌入到HTML文档中去执行,执行效率比完全生成HTML编辑的CGI要高很多,所有的CGI都能实现 支持几乎所有流行的数据库以及操作系统...,var_dump和print_r是函数 * echo 输出一个或多个字符串,中间以逗号隔开,没有返回值是语言结构而不是真正的函数,因此不能作为表达式的一部分使用 * print也是php的一个关键字,

    3.5K70

    PHP面试题,面试必看!

    应用类库的命名空间统一为app(可修改)而不是模块名; 控制器的类名默认不带Controller后缀,可以配置开启controller_suffix参数启用控制器类后缀; 控制器操作方法采用return...它使用面向对象的开发结构和MVC模式,并且模拟实现了Struts的标签库,各方面都比较人性化,熟悉J2EE的开发人员相对比较容易上手,适合php框架初学者。...2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。...HTML内容,请写出PHP的操作代码?...==protected: 受保护类型:== 在子类中可以通过self::var调用protected方法或属性,parent::method调用父类方法在实例中不能通过$obj->var 来调用 protected

    2K20

    php案例:创建一个数组cookie

    作者:陈业贵 华为云享专家 51cto(专家博主 明日之星 TOP红人) 阿里云专家博主 文章目录 解释 什么 URL 编码 cyg.php ---- 解释 cookie与 setrawcookie(...在发送 cookie 时,cookie 的值会自动进行 URL 编码。接收时会进行 URL 解码。如果你不需要这样,可以使用 setrawcookie() 代替。...什么 URL 编码 url编码是一种浏览器用来打包表单输入的格式。...浏览器从表单中获取所有的name和其中的值 ,将它们以name/value参数编码(移去那些不能传送的字符,将数据排行等等)作为URL的一部分或者分离地发给服务器。...不管哪种情况,在服务器端的表单输入格式样子象这样: theName=Ichabod+Crane&gender=male&status=missing& ;headless=yes cyg.php <?

    79420

    PHP 使用 $_SERVER 获取当前页面地址及其安全性问题

    $_SERVER[‘PHP_SELF’] $_SERVER['PHP_SELF'] 表示当前 php 文件相对于网站根目录的位置地址,与 document root 相关。...,只是要注意该地址是不包含 URL 中请求的参数(?...及后面的字串)的。 如果希望得到包含请求参数的完整 URL 地址,请使用 $_SERVER['REQUEST_URI'] 。...$_SERVER[‘PHP_SELF’] 安全性 由于利用 $_SERVER['PHP_SELF'] 可以很方便的获取当前页面地址,因此有人在提交表单数据到当前页面进行处理时,往往喜欢使用如下这种方式:...要解决该问题,可以有以下几种解决方案; 使用 htmlentities(_SERVER['PHP_SELF']) 替代 _SERVER['PHP_SELF'],让 URL 中可能的恶意代码转换为用于显示的

    2.2K31

    关于allow_url_fopen的设置与服务器的安全–不理解

    > 上面的代码假定如果“$session_auth”被置位的话,就是从session,而不是从用户输入来置位的,如果攻击者通过表单输入来置位的话,他就可以获得对站点的访问权。...PHP将是很安全的,即使是第三方的代码也是如此,因为其中很多功能已经不能使用。...**** 设置“register_globals”为“off” 这个选项会禁止PHP为用户输入创建全局变量,也就是说,如果用户提交表单变量“hello”,PHP不会创建“$ hello”,而只会创建...** 设置“open_basedir” 这个选项可以禁止指定目录之外的文件操作,有效地消除了本地文件或者是远程文件被include()的攻击,但是仍需要注意文件上载和session文件的攻击。...有的采集功能需要allow_url_fopen为on,而服务器供应商却因为不安全而关闭,导致不能采集。

    1.2K10

    Django 中使用 ajax 请求的正确姿势

    ': self.next_url, 'total': len(self.results) } 可以去查看我博客的完整代码,结果会返回 404、500、200 三种不同的结果,这三种结果最后都会经过...ajax 去判断,然后做出相对操作。...函数的开始部分是从 html 中拿表单里面的输入信息,这个不解释,可以使用 jQuery 的 $.trim() 方法来处理空格问题。...error 函数表示的是请求失败(返回码不是2xx)需要做的事情,这个函数其实有几个参数,但是我一般只需要用到第一个,因为这个参数可以拿到返回码,我需要通过返回码来做相对于的操作,可以看到我代码里面就是拿到返回码...> 从这里看代码就能理解为什么我要在 js 的函数中让 function 使用参数传入的形式传入 CSRF 参数和 URL 参数了,因为这样可以不用在 js 中写死,当然,js 中也可以使用从 html

    2K10

    常见面试题(笔试题)系列

    这也是MYSQL将默认存储引擎从Myisam变成Innodb的重要原因之一。 读写:Innodb擅长更新频繁的操作,而Myisam擅长查询频繁操作。...可以使用索引覆盖,详情见下。 问题又来了,为什么Myisam既然没有聚簇索引查询速度也会比Innodb高呢 ? Innodb在做select的时候,要维护的东西比Myisam引擎多得多。...优化: 建立复合索引:age_name 说说PHP的垃圾回收机制 php变量存在一个叫zval容器变量中。它的结构分为四部分:类型,值,is_ref和refcount。...而session是没有大小限制的 联系 session是依靠cookie的,sessionId就保存在cookie中,用户提交表单时,浏览器会默认的将cookie也带上,会将cookie里面的sessionId...如果cookie被禁用,通常有两种方式实现session而不依赖cookie。 URL重写,就是把sessionId直接附在URL路径的后面。 表单隐藏字段。

    42930

    10个实用的Django建议

    (译者注:比如说我们有一个views.about函数指向about页面r’^about/$’,就可以{% url views.about as about_url %}然后用{{about_url}}这个变量来代替绝对...这个酷毙了的用户系统甚至被建议应用到你的PHP项目中去,这里有一边Jeff Croft 关于为什么Django能够作为任何语言任何应用中的系统管理模块的一个很好的解决方案。...3、 使用独立的媒体服务器 在开发环境中把静态文件放在与Django项目所在的同一台服务器中问题并不大,但是却不要使用在生产环境中,为什么?效率问题。Jacobian.org给出了一个合理的解释。...5、 使用Django单元测试 利用单元测试确保你代码的改变和预期的一样,而不会破坏任何老的代码,以便向后兼容。Django一个强大的特性就是他能极其简单地写单元测试。...Jeff Croft解释为什么用Django创建一个项目比你自己设计出来的更高效。Django允许你扩展自己的Web站点,不需要担心设计或者代码以及数据库的兼容性,它会工作地很棒。

    1.5K80

    PHP的文件上传操作

    上图为上传文件后 核心知识 - 文件上传操作的基本步骤 1、构建基本的表单,并针对表单进行相关处理 2、在“上传文件”数据发生变化的时候,使用AJAX发送请求 3、PHP获得到文件的基本信息 4、PHP...执行SQL,将获取的基本信息存入数据库 5、PHP返回基本的图片路径 6、使用DOM操作设置预览图的路径 最核心的知识,其实依旧是知识的逻辑。...表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。...默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据,实现文件上传。...之后的数据库连接我就不再讲解了,如果还不是太清楚,可以查看《PHP对数据库的相关操作》 在PHP当中,通过$_FILES这个超全局变量进行文件相关信息的获取,使用$_FILES["file"]["name

    5K50
    领券