Réglage variable POST sans l'aide du formulaire
Est-il un moyen de définir un $_POST['var']
sans l'aide du formulaire dans un domaine connexe (pas de type='hidden') et en utilisant PHP.
Quelque chose comme
$_POST['name'] = "Denniss";
Est-il un moyen de faire cela?
EDIT:
Quelqu'un m'a demandé quelques explications sur ce point. Ainsi, par exemple, j'ai la page avec un formulaire, La forme ressemble à quelque chose comme ceci
<form method='post' action='next.php'>
<input type='text' name='text' value='' />
<input type='submit' name='submit' value='Submit'/>
</form>
Une fois le bouton "soumettre" est cliqué, je veux être redirigé vers next.php. Est-il un moyen pour moi de mettre le $_POST['texte'] variable à une autre valeur? Comment puis-je faire de cette persistante de sorte que quand je clique sur un autre bouton de soumission (par exemple) le $_POST['texte'] sera ce que j'ai mis sur next.php sans l'aide d'un champ caché.
Laissez-moi savoir si ce n'est toujours pas claire et je vous remercie pour votre aide.
- Tu veux dire dans le code du serveur ou côté client lorsqu'un utilisateur l'accès à certaines page?
- Pouvez-vous expliquer ce que vous essayez de faire? cURL pourrait être une option, les sessions peut-être une autre option. Trop vague pour donner une réponse exacte.
- Quoi? Et pourquoi ne veux-tu pas utiliser un champ caché? C'est ce qu'ils sont pour.
- Ce n'est pas que je ne veux pas les utiliser. Je veux juste savoir si il existe un moyen de le faire sans l'aide de champ caché.
whether there is a way to do it
le problème est que personne ne sais CE que vous voulez faire. qu'est ce qui vous a été demandé, parce que votre question est un non-sens.- vous avez besoin de donner de la vie réelle de la tâche qui vous a amené à cette question. sinon, il sera gaspillage de votre temps et du nôtre
- Vous ne pouvez pas conserver des données entre l'accès à la page sans l'aide d'une session ou cookies. Toutes les variables que vous définissez dans la page a.php seront perdues lors de la page b.php est accessible. Il semble que vous souhaitez utiliser d'une certaine façon de faire quelque chose, même si cette manière n'est pas adapté pour le problème.
- Sharpnel Quelqu'un a répondu à ma question déjà. @Felix Kling Merci
- Vous avez raison à propos de moi ne connaissant que très peu et je suis désolé de ne pas se demander " bon " question. Même si la réponse est "le même non-sens' où ma question, je suis reconnaissant pour ceux qui ont essayé de m'aider.
Vous devez vous connecter pour publier un commentaire.
Oui, il suffit de le mettre à une autre valeur:
Il écrase la valeur précédente correspondant à
text
clé du tableau. Le$_POST
est superglobale tableau associatif et vous pouvez modifier les valeurs comme un normal tableau PHP.Attention: Ce changement n'est visible que dans le même PHP portée d'exécution. Une fois l'exécution terminée et la page est chargée, le
$_POST
tableau est effacé. Une nouvelle forme de soumission va générer un nouveau$_POST
tableau.Si vous souhaitez persister la valeur de l'ensemble des soumissions de formulaires, vous devrez le mettre dans la forme comme un
input
de la balisevalue
de l'attribut ou de la récupérer à partir d'une banque de données.text
lorsque vous soumettez le formulaire. Pourquoi ne pas utiliser une session probablement, si vous voulez préserver une certaine valeur.$_POST
. Grand. C'est le même que si vous voulez faire$foo = $_POST; $foo['bar'] = 'baz';
Vous êtes de modifier une variable, rien de plus, rien de moins. Cela ne signifie pas que vous sont en train de modifier les données HTTP POST ou que cela va tenir jusqu'à ce que la page suivante, ou qu'il n'y a aucun point de la question pour commencer. -1$_POST
variable au sein d'une unité de test. +1if (!isset($_POST["underwear_ordered_with_tuxedo"])){$_POST["underwear_ordered_with_tuxedo"] = "super_wedgie_thong";}
quand, plus tard dans les associés ou inclus codeblocks vous avez unorder_from_catalog($_POST["underwear_ordered_with_tuxedo"]);
etshare_the_order_on_facebook($_POST["underwear_ordered_with_tuxedo"]);
et plus tard.$_POST
tableau, puis rediriger avec307
ne fait absolument rien. Le client ne reçoit que les307
code d'état, il ne recevra pas l'altération de la$_POST
de données et peut ainsi pas en avant, qui ont modifié les données de Paypal.Si vous souhaitez mettre $_POST['texte'] à une autre valeur, pourquoi ne pas utiliser:
sur next.php?
vous pouvez le faire en utilisant ajax ou par l'envoi d'en-têtes http+contenu comme:
parse_str(file_get_contents('php://input'));
Vous pouvez le faire à l'aide de jQuery. Exemple: