Raison pour laquelle php ne peut pas recevoir de données de publication

(*-*)浩
Libérer: 2023-02-27 09:52:02
original
6397 Les gens l'ont consulté

Raison pour laquelle php ne peut pas recevoir de données de publication

Vérifiez si le type de contenu des informations d'en-tête est "content-type:application/x-www-form-urlencoded" Cette transmission consiste à soumettre des données sous forme de php Utilisez la méthode $_POST pour accepter. (Apprentissage recommandé : Tutoriel vidéo PHP)

Si le type de contenu des informations d'en-tête n'est pas "content-type:application/json", la transmission est en json méthode pour soumettre des données, PHP doit utiliser file_get_contents("php://input") pour obtenir le flux d'entrée Accepter

Débutants en PHP, utilisez echo $_POST["variable"] et var_dump. ($_POST) Impossible d'obtenir les données de publication.

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 la déclaration ( Les ​​déclarations avec des points-virgules sont des déclarations 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 localhost :63342/ Sous cette forme)

La raison 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é de 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 serveur Apache est utilisé à ce moment-là et le numéro de port par défaut est 80, le serveur Apache peut exécuter le programme normalement.

Comme 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. je veux toujours passer de Ouvrez le débogueur du navigateur dans PhpStorm, ce qui peut être réalisé en modifiant la configuration :

(1) Mappez d'abord le répertoire du serveur Apache au répertoire local

Le La méthode est la suivante :

1. Recherchez le fichier /xampp/apache/conf/httpd.conf

2. Recherchez le code block

3. Dans  :

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

4. Ajoutez un morceau de code au même niveau que , comme suit :

<Directory "E:/phpworkspace/">
    AllowOverride All
    Options Indexes FollowSymLinks Includes ExecCGI
    Require all granted
</Directory>
Copier après la connexion

Terminé Maintenant, redémarrez Apache et visitez : http://localhost/phpworkspace/ C'est tout

(2) Ensuite, dans PhpStorm, recherchez File->Settings-. >Construction, Exécution, Déploiement->Déploiement, Il est 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. Serveur Apache sous http://localhost

, remplacez-le par le répertoire de travail que vous avez mappé au projet local et 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, et 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

.

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!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!