Solution to the problem that php cannot obtain post parameters: 1. Find the "php.ini" configuration file, look for the "enable_post_data_reading" variable, and ensure that it is open; 2. Create the project on the Apache server directory; 3. Change the "httpd.conf" file.
Recommended: "PHP Video Tutorial"
Blogger running php environment: windows phpstorm xampp
I am new to PHP and cannot get post data using echo $_POST["variable"] and var_dump($_POST).
The solution is as follows:
1. Find the php.ini configuration file, look for the enable_post_data_reading variable, make sure it is open, and the statement is in front of The semicolon should be removed (the statement with semicolon is a comment statement):
2. Observe you The address of the browser running php, will find that the service port number used to open the browser in PhpStorm is 63342 (URL is in the form of localhost:63342/)
So the reason for the problem is: PhpStorm uses its own internal server by default, but does not use the apache server in xampp. The built-in server phpStorm uses port 63342, and there is a problem within the server, causing the POST method to be abnormal; and if you place the project in the working directory of the Apache server and enter localhost in the address bar, the Apache server is used at this time, and the default port number is 80, the Apache server can run the program normally.
Since there is a problem with PhpStorm’s internal server, the solution is to find a way not to use the internal server. There are two methods:
1. Create the project in the working directory of the Apache server, and directly enter the localhost address in the browser address bar each time it runs
2. If you still want to debug the program by opening the browser from PhpStorm, you can achieve this by changing the configuration:
(1) First map the apache server directory to the local directory
The method is as follows:
1. Find the /xampp/apache/conf/httpd.conf file
2. Find the
3. Add the following to the child of
# /phpworkspace/ : 其它磁盘上目录的别名, 就是你想映射过来的目录的别名 # "E:/phpworkspace/" : 这个是目录的绝对路径 Alias /phpworkspace/ "E:/phpworkspace/" # 现在就可以通过 //localhost/phpworkspace/ 访问到 E盘下phpworkspace文件夹里的项目了
4.
Add a piece of code at the same level as
<Directory "E:/phpworkspace/"> AllowOverride All Options Indexes FollowSymLinks Includes ExecCGI Require all granted </Directory>
Completed. Now restart Apache and visit: http://localhost/phpworkspace/ That’s it
(2) Then in PhpStorm, find File->Settings->Build, Execution, Deployment->Deployment. It is initially empty. Click the green plus sign to add a local server. Just name it localhost. Select Type. In place:
After creation, the default settings under the Connection tab on the right have configured the server to port 80 Apache server, i.e. http://localhost
Change it to the working directory you mapped to your local project:
# Set the Local path under the ##Mappings tag to the directory of your local project: