sirve server_addr request_method query_string que para method domain php post get

php - server_addr - $_SERVER[''REQUEST_METHOD''] return GET insted POST



request_method para que sirve (2)

Creo un formulario usando un método de publicación como ese:

<form name="indexFormn" id="indexForm" method="POST" action="page.php"> <div class="AdminformDiv"> <div class="errorbox"> <?php if (!is_array($this->actionErrors)) { echo $this->actionErrors; } ?> </div> <div> <table border="0" cellpadding="0" cellspacing="0" style="width:700px"> <tbody> <tr> <td style="width:128px">Amount</td> <td colspan="2">$ <?php echo $this->price;?> USD<td style="width:270px">&nbsp;</td> </tr> <tr> .....

pero el problema es cuando hago "var_dump ($ _ SERVER [''REQUEST_METHOD'']);" en mi código php obtengo todo el tiempo "GET" no "POST" y realmente no sé por qué?


Básicamente, la mayoría de las solicitudes HTTP son solicitudes GET. y $ _SERVER [''REQUEST_METHOD''] evalúa el método GET predeterminado.

puede usar if ($ _ POST) para verificar si se trata de un POST. (Esa es la matriz con datos POST. Todas las páginas tienen $ _GET establecido, por lo que si ($ _ GET) no funcionará para decir si se trata de un GET)

cuando envíe su formulario, seguro obtendrá el método POST en "page.php". intenta obtener el método en esta página y encuentra.


Acabo de tener este problema usando el Framework MVC de Codeigniter. Esto es lo que descubrí:

Mi atributo de Acción en mi formulario no incluía el "www" en frente de mi dominio, pero mi URL real necesitaba el "www".

es decir, mi formulario tenía action="https://mydomain/something" pero si me dirigía a esa URL, noté que mi servidor web agregaba www al comienzo: https://www.mydomain/something . (Yo uso DreamHost y es una configuración que había elegido)

Espero que este sea también tu problema, realmente frustrante intentarlo, pero una vez que obtuve mi acción y la URL real para acordar el "www", mi método de solicitud pasó de GET a POST.