Cita:
Iniciado por Triby Bueno, var_dump() no devuelve valor y su unica utilidad es mostrar lo que estas recibiendo, entonces, asignar
$input es lo que esta mal.
Otro par de modificaciones:
Código PHP:
Ver original// Servidor # 2
// Suponiendo que no "puedes ver" el resultado de eso,
// Cancela la ejecucion:
// En servidor # 1
echo $response;
Por cierto, lo de "token=test" como cadena, esta mal!, insisto, tendrias que enviar algo como:
curl_setopt($ch, CURLOPT_POSTFIELDS, array('token' => 'test'));
Gracias por tu ayuda pero sigo sin recibir servidor 2
Así es como está quedando
Archivo enviar.php => Servidor 1
Código PHP:
<?php
$datos = array();
$datos['token']= $_POST['token'];
$post_str = '';
foreach ($datos as $key => $value) {
$post_str .= $key. '=' .urldecode($value).'&';
}
$post_str =substr($post_str, 0, -1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://servidor2/servidor.php');
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, array('token' => 'test'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$response = curl_exec($ch);
echo $response;
curl_close($ch);
var_dump($post_str);
?>
Devuelve
Código PHP:
array(1) { ["token"]=> string(4) "test" } string(10) "token=test"
Archivo servidor.php = En Servidor 2
Código PHP:
<?php
require('config.php');
$input = var_dump($_POST);
$link = Conectarse();
mysql_query("INSERT INTO datos (dato) VALUES ('$input')", $link);
mysql_close($link);
?>
Al ver la base de datos está insertando pero sin datos.