Home > Backend Development > PHP Problem > What should I do if php cannot obtain post parameters?

What should I do if php cannot obtain post parameters?

PHPz
Release: 2023-03-06 06:00:01
Original
2407 people have browsed it

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.

What should I do if php cannot obtain post parameters?

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 code block

3. Add the following to the child of Code:

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

4.

Add a piece of code at the same level as , as follows:

<Directory "E:/phpworkspace/">
    AllowOverride All
    Options Indexes FollowSymLinks Includes ExecCGI
    Require all granted
</Directory>
Copy after login

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:


##At this time, click Browse from PhpStorm server, the accessed URL no longer has the field 63342 port, but uses the local Apache server, and the corresponding form data can also be received normally

The above is the detailed content of What should I do if php cannot obtain post parameters?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template