Utiliser simultanément des requêtes POST et GET en PHP
En PHP, il n'est pas possible d'envoyer simultanément une requête GET et POST dans un seul HTTP demande. Cependant, il existe des solutions de contournement qui peuvent obtenir un effet similaire.
Chaînage de méthodes
Une solution consiste à enchaîner les méthodes ensemble dans l'attribut d'action du formulaire :
<form name="y" method="post" action="y.php?foo=bar">
Dans ce cas, PHP remplira à la fois $_POST['foo'] et $_GET['foo'] avec la valeur "bar".
Distinction importante
Il est crucial de comprendre que la soumission du formulaire ne lance toujours qu'une seule requête HTTP. Les paramètres GET ne sont pas envoyés sous forme de requête POST supplémentaire mais plutôt ajoutés à l'URL.
Exemple d'utilisation
Dans votre scénario spécifique, vous pouvez utiliser cette technique pour transmettre l'utilisateur a saisi l'année à partir de la requête GET tout en accédant également à la base de données en fonction de la case cochée dans le POST request :
if (isset($_POST['general']) && $_POST['general'] == 'YEAR') { $year = $_GET["year"]; // Access the database and perform the necessary actions }
Conclusion
L'utilisation simultanée des requêtes GET et POST peut être obtenue par chaînage de méthodes. Cependant, il est important de noter qu'il s'agit toujours d'une requête HTTP unique et que les paramètres GET sont ajoutés à l'URL plutôt que envoyés sous forme de requête distincte.
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!