Maison > Article > développement back-end > Que dois-je faire si php ne peut pas obtenir les données du formulaire ?
Solution pour laquelle php ne peut pas obtenir les données du formulaire : 1. Recherchez le fichier de configuration php.ini et supprimez le point-virgule avant "enable_post_data_reading" ; 2. Créez le projet dans le répertoire de travail du serveur Apache 3. Ouvrez-le depuis le navigateur PhpStorm ; débogueur.
L'environnement d'exploitation de cet article : système Windows 7, version phpstorm 2020, ordinateur Dell G3
Que dois-je faire si php ne parvient pas à obtenir les données du formulaire ? La solution au problème de ne pas obtenir les données de publication lors de la soumission du formulaire php
Le blogueur exécute l'environnement php : windows+phpstorm+xampp
Je suis nouveau sur php, mais je n'arrive pas à l'obtenir avec echo $_POST ["variable"] et var_dump($_POST) publient des données.
La solution est la suivante :
1. Recherchez le fichier de configuration php.ini, recherchez la variable activate_post_data_reading, assurez-vous qu'elle est ouverte et supprimez le point-virgule devant l'instruction (l'instruction avec un point-virgule est une déclaration de commentaire) :
2. Observez l'adresse de votre navigateur exécutant php, vous constaterez que le numéro de port de service utilisé pour ouvrir le navigateur dans PhpStorm est 63342 (l'URL est sous la forme localhost:63342/ )
La cause du problème est donc la suivante : PhpStorm utilise son propre serveur interne par défaut, mais n'utilise pas le serveur Apache dans xampp. Le serveur intégré phpStorm utilise le port 63342, et il y a un problème au sein du serveur, provoquant une anomalie de la méthode POST et si vous placez le projet dans le répertoire de travail du serveur Apache et entrez localhost dans la barre d'adresse, le Le serveur Apache est utilisé actuellement et le numéro de port par défaut est 80, le serveur Apache peut exécuter le programme normalement.
Puisqu'il y a un problème avec le serveur interne de PhpStorm, la solution est de trouver un moyen de ne pas utiliser le serveur interne. Il existe deux méthodes :
1. Créez le projet dans le répertoire de travail du serveur Apache, et saisissez directement l'adresse localhost dans la barre d'adresse du navigateur à chaque exécution
2 Si vous souhaitez toujours ouvrir le débogueur du navigateur depuis PhpStorm, vous pouvez le faire. donc en changeant la configuration :
(1) Mappez d'abord le répertoire du serveur Apache au répertoire local
La méthode est la suivante :
1 Trouvez le fichier /xampp/apache/conf/httpd.conf
2. Recherchez
3. Ajoutez le code suivant au niveau enfant de
# /phpworkspace/ : 其它磁盘上目录的别名, 就是你想映射过来的目录的别名 # "E:/phpworkspace/" : 这个是目录的绝对路径 Alias /phpworkspace/ "E:/phpworkspace/" # 现在就可以通过 //localhost/phpworkspace/ 访问到 E盘下phpworkspace文件夹里的项目了
4. ifModule alias_module>, comme suit :
<Directory "E:/phpworkspace/"> AllowOverride All Options Indexes FollowSymLinks Includes ExecCGI Require all granted </Directory>
Terminé. Maintenant, redémarrez Apache et visitez : http://localhost/phpworkspace/ (2) Puis dans PhpStorm, recherchez Fichier->Paramètres->Build, Execution, Deployment-> Déploiement, initialement vide, cliquez sur le signe plus vert pour ajouter un serveur local, nommez-le simplement localhost, sélectionnez En place pour Type :
Une fois la création terminée, les paramètres par défaut sous l'onglet Connexion à droite ont configuré le serveur sur le port 80 du serveur Apache, c'est-à-dire http://localhost
Changez-le vers le répertoire de travail que vous avez mappé au projet local :
Définissez le chemin local sous la balise Mappings vers le répertoire de votre projet local :
À ce stade, cliquez sur le navigateur depuis PhpStorm. L'URL consultée n'a plus le champ 63342 port. Au lieu de cela, le serveur Apache local est utilisé et les données du formulaire correspondantes peuvent être reçues. normalement.
Apprentissage recommandé : "
Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!