php为什么接收不到帖子数据

  介绍

这篇文章将为大家详细讲解有关php为什么接收不到帖子数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

<>强检查头信息内容类型是不是为“内容类型:应用程序/x-www-form-urlencoded"这种传输是以表单的方式提交数据php使用$ _POST方式接受。,

<>强如果头信息内容类型是不是为“内容类型:应用程序/json"这种传输是以json方式提交数据,php需要使用file_get_contents (“php://input")获取输入流的方式接受

初学php,用echo $ _POST [“variable"]和var_dump ($ _POST)都获取不到帖子数据。

<强>解决方法如下:

1。找到php。ini配置文件,查找enable_post_data_reading变量,确保其打开状态,并且该语句前面的分号要去掉(有分号的语句是注释语句):

2。观察你的运行php的浏览器地址,会发现在PhpStorm中打开浏览器使用的服务端口号是63342 (URL是localhost: 63342/这样的形式)

因此问题的原因在于:PhpStorm默认使用的是自带的内部服务器,却不使用xampp里面的apache服务器.phpStorm这个内置服务器使用63342端口,而且服务器内部有问题,导致发布方法异常;而如果把项目放在apache服务器的工作目录下,在地址栏输入主机,此时使用的是apache服务器,默认端口号为80,apache服务器可以正常运行程序。

既然PhpStorm内部服务器有问题,那解决方法就是想办法不使用内部服务器。有两种方法:

1。将项目创建在apache服务器的工作目录下,每次运行时在浏览器地址栏直接输入localhost地址

2。如果仍希望通过从PhpStorm中打开浏览器调试程序,可以通过更改配置实现:

(1)首先将apache服务器目录映射到本地目录

<强>做法如下:

1。找的到/xampp apache/conf/httpd/2慰次募?/p>

2。找到& lt; IfModule alias_module>& lt;/ifModule>代码块

3。在& lt; IfModule alias_module>的子级加上如下代码:

#/phpworkspace:其它磁盘上目录的别名,就是你想映射过来的目录的别名   #“E:/phpworkspace/?:这个是目录的绝对路径   别名/phpworkspace/癊:/phpworkspace/?   #现在就可以通过//localhost/phpworkspace访问到E盘下phpworkspace文件夹里的项目了

4。在与& lt; ifModule alias_module>同级的地方加上一段代码,如下:

& lt;目录“E:/phpworkspace/氨?   AllowOverride所有   FollowSymLinks选项指标包括ExecCGI   要求所有授予   & lt;/Directory>

完工。现在重启Apache访问:http://localhost/phpworkspace/就可以了

(2)然后在PhpStorm中,依次找到文件→设置→构建、执行、部署→部署,初始是空的,点击绿色的加号添加本地服务器,名字localhost就好了,类型选择到位:

创建完成后,右侧连接标签下默认的设置已经将服务器配置为80端口下的Apache服务器,即http://localhost

将其改成你映射到本地项目的工作目录,映射标签下的本地路径设置成你本地项目的目录。

此时从PhpStorm中点击浏览器,访问的URL已经没有了63342端口这个字段,而是使用了本地Apache服务器,相应的表单数据也可以正常接收了

关于php为什么接收不到帖子数据就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

php为什么接收不到帖子数据