Domanda

Perché quando passo i parametri attraverso l'URL codificato e il metodo GET in formato HTML, i parametri codificati nell'URL vengono eliminati?

es. Setup:

<form action="process.php?hello=world" method="GET">
<input type="text" name="foo" value="bar">
<input type="submit">
</form>

Risultato: la variabile ciao non verrà riconosciuta in process.php .

È questa cattiva pratica?

È così che PHP lo elabora o è correlato a come il browser invia la richiesta? C'è lo stesso problema in altre lingue?

È stato utile?

Soluzione

Sì, è una cattiva pratica perché non funziona.

Se desideri passare " input modulo nascosto " quindi è necessario utilizzare un elemento modulo nascosto:

<input type="hidden" name="hello" value="world" />

Come afferma rezzif nel suo commento, puoi mescolare GET & amp; POST in questo modo:

<form action="/something?foo=bar" method="POST">
<input type="text" name="baz" />
</form>

Come regola generale evito però di mescolare i due. Trovo strano avere i parametri GET nella mia azione in forma.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top