php - pasar - metodo post ejemplo
EnvĂo de datos POST sin formulario (5)
¿Puedo enviar, por ejemplo, una cadena u otra información a otro archivo .php sin que esté expuesto [por lo tanto, no por GET, sino por POST conforme a lo que sé] sin usar un formulario?
Envíe sus datos con SESSION en lugar de publicarlos.
session_start();
$_SESSION[''foo''] = "bar";
En la página donde recibe la solicitud, si necesita datos POST (alguna lógica extraña), puede hacer esto en algún lugar al principio:
$_POST[''foo''] = $_SESSION[''foo''];
Los datos de la publicación serán válidos al igual que si se enviaron con POST.
Luego destruya la sesión (o simplemente desarme los campos si necesita la sesión para otros fines).
Es importante destruir una sesión o deshacer los campos, porque a diferencia de POST, SESSION seguirá siendo válida hasta que la destruya explícitamente o hasta el final de la sesión del navegador. Si no lo haces, puedes observar algunos resultados extraños. Por ejemplo: usa sesson para filtrar algunos datos. El usuario enciende el filtro y obtiene los datos filtrados. Después de un tiempo, regresa a la página y espera que el filtro se restablezca, pero no es así: todavía ve datos filtrados.
Puede usar AJAX para enviar una solicitud POST si no quiere formularios.
Usar el método jquery $.post es bastante simple:
$.post(''/foo.php'', { key1: ''value1'', key2: ''value2'' }, function(result) {
alert(''successfully posted key1=value1&key2=value2 to foo.php'');
});
Si no desea que sus datos sean vistos por el usuario, use una sesión de PHP.
Los datos en una solicitud posterior aún son accesibles (y manipulables) por el usuario.
Consulte este tutorial sobre sesiones de PHP.
Simplemente use: file_get_contents()
// building array of variables
$content = http_build_query(array(
''username'' => ''value'',
''password'' => ''value''
));
// creating the context change POST to GET if that is relevant
$context = stream_context_create(array(
''http'' => array(
''method'' => ''POST'',
''content'' => $content, )));
$result = file_get_contents(''http://www.example.com/page.php'', null, $context);
//dumping the reuslt
var_dump($result);
Reference : mi respuesta a una pregunta similar:
eche un vistazo a la documentación de php para estas funciones que puede enviar para solicitar el uso de las mismas.
fsockopen()
fputs()
o simplemente use una clase como Zend_Http_Client que también se basa en socket-conenctions.
También encontré un buen ejemplo usando Google ...