• Lunes 29 de Abril de 2024, 04:04

Autor Tema:  Ejecutar Un Script En Un Server Remoto  (Leído 1142 veces)

josuedt

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Ejecutar Un Script En Un Server Remoto
« en: Viernes 10 de Noviembre de 2006, 19:19 »
0
Hola foreros:

Lo que me tiene ocupado es lograr desde una página en un servidor local enviarle unos datos a un script en un servidor remoto y obtener de él la respuesta generada.
O sea, lo que quiero hacer es que en mi página el usuario me facilite unos datos con los cuales debo hacer una búsqueda en una BD que está en el servidor remoto, pero no puedo tener acceso a esa BD desde mi servidor. Para esto lo que debo hacer es pasarle esos datos a un script en el servidor remoto y él es el que va a realizar la consulta y me devuelve el resultado de la búsqueda.

Como lo estaba ideando es incluyendo el script remoto en mi página. Algo así:
Código: Text
  1. <body bgcolor="#FFFFFF" text="#000000" link="#FF9966" vlink="#FF9966" alink="#FFCC99">
  2.  
  3. <?php
  4.   if ($_POST['user']) {
  5.     extract($_POST);
  6.     require_once('SERVIDOR_REMOTO/directorio/script.php');
  7.    
  8.     $result = consulta_server($user);
  9.    
  10.     if ($result != null) {
  11.       foreach ($result as $value) {
  12.         echo $value.'<br>';
  13.       }
  14.     }
  15.     unset($result);
  16.     unset($resultado);
  17.   }
  18. ?>
  19. <form action="" method="POST">
  20. <input type="text" name="user" value=""/>  <br>
  21. <input type="password" name="pass" size="40" maxlength="40"/> <br>
  22. <input type="submit" name="submit" value="Enviar"/>  
  23. </form>
  24.  
  25.  
Y en el script remoto algo como esto:
Código: Text
  1. <?php
  2.  
  3. function consulta_server($user){
  4.   $link = mysql_connect('localhost','*****','******') or die("Error de conceccion con la BD");
  5.   @mysql_select_db('****',$link);
  6.   $query = @mysql_query("select * from users where username = '$user'");
  7.  
  8.   $result = @mysql_fetch_array($query);
  9.   if (!empty($result)) {
  10.     foreach ($result as $key => $value) {
  11.       if (!is_integer($key)) {
  12.         $resultado->$key = $value;
  13.       }
  14.     }
  15.   }else {
  16.     echo "No encontrado el usuario $user";
  17.   }
  18.   return $resultado;
  19. }
  20.  
  21. echo "La encontre<br>";
  22. ?>
  23.  
Pero me dice que no reconoce la función declarada ni me reconoce las variables del script local.
Cuando ejecuto esta combinación me devuelve "La encontre" que es un echo que hago en el script remoto, o sea, sí está entrando al script y ejecuta el echo, pero no reconoce la función y mucho menos me devuelve nada.

Si alguien me pudiera dar una ayudita... les agradecería muchísimo porque no quiero entrar al tema de los Web Services.

Gracias de antemano foreros.  ;)