Foros del Web » Programando para Internet » PHP »

Problemas con mi Clase - API

Estas en el tema de Problemas con mi Clase - API en el foro de PHP en Foros del Web. hola gente, estoy haciendo una api para mostrar solamente datos de la BD, y me ha funcionado de forma irregular, primero a veces se me ...
  #1 (permalink)  
Antiguo 25/06/2010, 14:21
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
Problemas con mi Clase - API

hola gente, estoy haciendo una api para mostrar solamente datos de la BD, y me ha funcionado de forma irregular, primero a veces se me duplica contenido aunque use require_once, y no he logrado hacer una sola consulta a la bd para tener en un array los valores de la consulta, por lo que he tenido que hacer muchas consultas a la bd.

les muestro el code:

api-trabajadores.php
Código PHP:
<?

$HTTP_API_KEY 
$_POST['API_KEY'];

echo 
"Prueba de la API";
echo 
"<br>";

function 
conectar($conectar
    { 
        
$link=''
        if(
$conectar == 1
        { 
            
$link mysql_connect("localhost""root""root"false65536)  

                or die(
err(mysql_errno()));                                    
                
            
mysql_select_db("cosit"
                or die(
err(mysql_errno()));      
        } 
        if(
$conectar == 0
        { 
            
$link mysql_connect("localhost""root""root"false65536); 
                
mysql_close($link); 
        } 
    }

function 
VerificaAPI($API_KEY) {
    
    if(empty(
$API_KEY)):

        
$ERR_CODE "001";
        
$ERR_DESC "Error, Debe ingresar un API KEY";
        
        return 
$ERR_CODE;
        
      else:
          
        
conectar(1);
        
$sql "SELECT * FROM api WHERE nro_api = '" .$API_KEY"'";
        
$consulta mysql_query($sql);
        
$existe mysql_num_rows($consulta);
        
$muestra mysql_fetch_array($consulta);
        
conectar(0);
        
            if (
$existe == 1):
                
                
$EMPRESA $muestra['empresa'];

                return 
000;

              else:
              
                
$ERR_CODE "002";
                
$ERR_DESC "Error, API KEY Erronea";

                return 
$ERR_CODE;
                
            endif;
    endif;    
}                   
    
    
    Switch (
VerificaAPI($HTTP_API_KEY))
        {
            
            case(
000):
            
            echo 
"CASE 000 - API EN FUNCIONAMIENTO...";
            
                class 
API_Cocert {
                    private 
$rut;
                    private 
$id;
                     
                    function 
_construct($rut){
                        
$this -> rut $rut;
                    }
                    
                    function 
mostrar_nombres($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['nombres'];
                        return 
$out;
                    }
                    
                    
                    function 
mostrar_apellidos($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['apellidos'];
                        return 
$out;
                    }
                    
                    function 
mostrar_telefono($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['telefono'];
                        return 
$out;
                    }
                    
                    function 
mostrar_rut($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['rut'];
                        return 
$out;
                    }
                    
            
                    function 
mostrar_vcto_licencia($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['vcto_licencia'];
                        return 
$out;
                    }
            
                    function 
mostrar_tipo_licencia($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['tipo_licencia'];
                        return 
$out;
                    }
                    
                    function 
psicotecnico($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['psicotecnico'];
                        return 
$out;
                    }
                    
                    function 
vcto_examen($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['vcto_examen'];
                        return 
$out;
                    }
                    
            
                    function 
prevision($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['prevision'];
                        return 
$out;
                    }
            
            
                    function 
tipo_contrato($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['tipo_contrato'];
                        return 
$out;
                    }
            
            
                    function 
cargo($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['cargo'];
                        return 
$out;
                    }
            
            
                    function 
area($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['area'];
                        return 
$out;
                    }
            
            
                    function 
supervisor($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['supervisor'];
                        return 
$out;
                    }
            
            
                    function 
das($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['das'];
                        return 
$out;
                    }
            
            
                }
                
            break;
            
            case(
001):
            
                echo 
"Error, Debe ingresar un API KEY";
                exit();
            break;
            
            case(
002):
                echo 
"Error, API KEY Erronea";
                exit();
            break;
            
        }
    

?>

archivo que invoca a la api, y donde se muestran los datos:

Código PHP:

<?

$RUT 
"1"
$URL_API "http://dllo/Librerias/api/api-trabajadores.php";
$URL_CONFIG "http://dllo/Librerias/api/api-trabajadores-config.php";
$API_KEY_STR "API_KEY=12345";

if(
function_exists('curl_init')) :

    
$ch curl_init();
    
curl_setopt($chCURLOPT_URL$URL_API);
    
curl_setopt($chCURLOPT_POST1);
    
curl_setopt($chCURLOPT_POSTFIELDS$API_KEY_STR);
    
curl_exec($ch);
    
curl_close($ch);

else:

    echo 
"No hay Soporte Para cURL";
    
endif;

/*

si incluyo este archivo, no funciona y se duplica la api, mostrando 
Prueba de la API de Cocert
CASE 000 - API EN FUNCIONAMIENTO...Prueba de la API de Cocert
Error, Debe ingresar un API KEY
*/

require_once('Librerias/api/api-trabajadores.php');

$obj = new API();

echo 
$obj -> mostrar_nombres("$RUT");
echo 
"<br>";
echo 
$obj -> mostrar_apellidos("$RUT");

?>
espero que alguien me de una mano!!!

Muchas Gracias.
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #2 (permalink)  
Antiguo 25/06/2010, 14:26
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Problemas con mi Clase - API

Lo que hace el require_once es evitar que te vuelva a llamar un archivo que anteriormente lo hayas llamado con otro require_once, no es para evitar duplicar contenido que se despliega en el navegador. Podrías exponer mejor que es lo que hace el código y que esperas que haga.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 25/06/2010, 15:30
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problemas con mi Clase - API

Tienes algunos errores:

Código PHP:
Ver original
  1. // Si no se proporciono codigo, creas una cadena:
  2.        $ERR_CODE = "001";
  3. // Si todo esta bien, devuelves CERO, no importa cuantos pongas, siempre sera solo CERO
  4.         return 000;
  5. // Si el codigo esta mal, es otra cadena:
  6.         $ERR_CODE = "002";
  7.  
  8.  
  9. // Al hacer el switch:
  10.     case (000): // O lo pones como cadena o simplemente cero
  11.  
  12.  
  13. // Supongo que seria mas facil leer el codigo si:
  14.     case "001":
  15.            die('Proporciona la API KEY');
  16.     case "003":
  17.            die('La API KEY no es valida');
  18.     case "000":

Otro error que tienes es que la funcion conectar no devuelve el recurso MySQL ($link) para despues finalizarlo correctamente con mysql_close($link);
__________________
- León, Guanajuato
- GV-Foto
  #4 (permalink)  
Antiguo 25/06/2010, 15:35
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
Respuesta: Problemas con mi Clase - API

el codigo, de la clase muestra informacion de la BD segun se define la variable $RUT, el segundo archivo tiene las variables para que se muestren los datos, por ejemplo:

$RUT = 1 = es el numero de id que deseo mostrar
$URL-API = ruta de la api
$URL_CONFIG = no usado
$API_KEY_STR = variable verificadora usada en la funcion (VerificaAPI), la cual contiene un numero valido para utilizar la api. y es enviada por POST al "api-trabajadores.php" ahi se verifica la la existencia de esta "API_KEY" y si existe en la bd autoriza el uso de la clase, de lo contrario retorna ERROR 002, Error, Api Key Erronea...


lo que hace ahora:

envia por POST, Recibe bien, verifica el codigo de la api, y en el Switch funciona super bien, mostrando el (echo "CASE 000 - API EN FUNCIONAMIENTO...";)

pero no muestra contenido de la bd.

saludos
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #5 (permalink)  
Antiguo 25/06/2010, 15:44
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problemas con mi Clase - API

Error:

$obj = new API;

La clase se llama: API_Cocert

Por otra parte, para evitarte errores futuros y problemas al tratar de solucionarlos, trata de optimizar tu programacion.
__________________
- León, Guanajuato
- GV-Foto
  #6 (permalink)  
Antiguo 25/06/2010, 15:50
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
Respuesta: Problemas con mi Clase - API

Gracias triby por tus sugerencias, he modificado el codigo y quedo asi:

Código PHP:

<?

$HTTP_API_KEY 
$_POST['API_KEY'];

echo 
"Prueba de la API";
echo 
"<br>";

function 
conectar($conectar
    { 
        
$link=''
        if(
$conectar == 1
        { 
            
$link mysql_connect("localhost""root""root"false65536

                or die(
err(mysql_errno()));                                    
                
            
mysql_select_db("cosit"
                or die(
err(mysql_errno()));      
        } 
        if(
$conectar == 0
        { 
            
$link mysql_connect("localhost""root""root"false65536); 
                
mysql_close($link); 
        } 
    }

function 
VerificaAPI($API_KEY) {
    
    if(empty(
$API_KEY)):

        
$ERR_CODE "001";
        
$ERR_DESC "Error, Debe ingresar un API KEY";
        
        return 
"API_KEY_VACIA";
        
      else:
          
        
conectar(1);
        
$sql "SELECT * FROM api WHERE nro_api = '" .$API_KEY"'";
        
$consulta mysql_query($sql);
        
$existe mysql_num_rows($consulta);
        
$muestra mysql_fetch_array($consulta);
        
conectar(0);
        
            if (
$existe == 1):
                
                
$EMPRESA $muestra['empresa'];
                echo 
"API_KEY Autorizada <br>";
                echo 
$EMPRESA"<BR>";

                return 
"API_AUTORIZADA";

              else:
              
                
$ERR_CODE "002";
                
$ERR_DESC "Error, API KEY Erronea";

                return 
"API_KEY_ERRONEA";
                
            endif;
    endif;    
}                   
    
    
    Switch (
VerificaAPI($HTTP_API_KEY))
        {
            case 
"API_KEY_VACIA":
            
                die(
"Error, Debe ingresar un API KEY");
                
            break;
            
            case 
"API_KEY_ERRONEA":
                die(
"Error, API KEY Erronea");
            break;
            
            case
"API_AUTORIZADA":
            
            echo 
"CASE 000 - API EN FUNCIONAMIENTO...";
            
                class 
API {
                    private 
$rut;
                    private 
$id;
                     
                    function 
_construct($rut){
                        
$this -> rut $rut;
                    }
                    
                    function 
mostrar_nombres($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['nombres'];
                        return 
$out;
                    }
                    
                    
                    function 
mostrar_apellidos($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['apellidos'];
                        return 
$out;
                    }
                    
                    function 
mostrar_telefono($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['telefono'];
                        return 
$out;
                    }
                    
                    function 
mostrar_rut($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['rut'];
                        return 
$out;
                    }
                    
            
                    function 
mostrar_vcto_licencia($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['vcto_licencia'];
                        return 
$out;
                    }
            
                    function 
mostrar_tipo_licencia($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['tipo_licencia'];
                        return 
$out;
                    }
                    
                    function 
psicotecnico($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['psicotecnico'];
                        return 
$out;
                    }
                    
                    function 
vcto_examen($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['vcto_examen'];
                        return 
$out;
                    }
                    
            
                    function 
prevision($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['prevision'];
                        return 
$out;
                    }
            
            
                    function 
tipo_contrato($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['tipo_contrato'];
                        return 
$out;
                    }
            
            
                    function 
cargo($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['cargo'];
                        return 
$out;
                    }
            
            
                    function 
area($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['area'];
                        return 
$out;
                    }
            
            
                    function 
supervisor($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['supervisor'];
                        return 
$out;
                    }
            
            
                    function 
das($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['das'];
                        return 
$out;
                    }
            
            
                }
                
            break;            
            
        }
    

?>
desafortunadamente sigue el mismo comportamiento:

para eliminar el duplicado he suprimido la linea de codigo:

Código PHP:
<?

$RUT 
"1"
$URL_API "http://dllo/Librerias/api/api-trabajadores.php";
$URL_CONFIG "http://dllo/Librerias/api/api-trabajadores-config.php";
$API_KEY_STR "API_KEY=12345";

if(
function_exists('curl_init')) :

    
$ch curl_init();
    
curl_setopt($chCURLOPT_URL$URL_API);
    
curl_setopt($chCURLOPT_POST1);
    
curl_setopt($chCURLOPT_POSTFIELDS$API_KEY_STR);
    
curl_exec($ch);
    
curl_close($ch);

else:

    echo 
"No hay Soporte Para cURL";
    
endif;

//require_once('Librerias/api/api-trabajadores.php');

$obj = new API();

echo 
$obj -> mostrar_nombres("$RUT");
echo 
"<br>";
echo 
$obj -> mostrar_apellidos("$RUT");
echo 
$obj -> mostrar_telefono("$RUT");
echo 
$obj -> mostrar_rut("$RUT");
echo 
$obj -> mostrar_vcto_licencia("$RUT");
echo 
$obj -> mostrar_tipo_licencia("$RUT");
echo 
$obj -> psicotecnico("$RUT");
echo 
$obj -> vcto_examen("$RUT");
echo 
$obj -> prevision("$RUT");
echo 
$obj -> tipo_contrato("$RUT");
echo 
$obj -> cargo("$RUT");
echo 
$obj -> area("$RUT");
echo 
$obj -> supervisor("$RUT");
echo 
$obj -> das("$RUT");


?>
ahora muestra todo bien, salvo el contenido de la bd, osea la clase no funciona.

alguna sugerencia??

gracias.

pd: lo que mencionas fue error al postear, la clase se llama API y es invocada de esa forma.

esto muestra el archivo que incluye a la API.

Código:
Prueba de la API
API_KEY Autorizada 
Empresa Prueba
CASE 000 - API EN FUNCIONAMIENTO...
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl

Última edición por cadrogui; 25/06/2010 a las 15:56
  #7 (permalink)  
Antiguo 25/06/2010, 16:26
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problemas con mi Clase - API

Intenta por favor var_dump($obj);

Cuando veas que es no definido o nulo, entonces vas a la linea donde dice $obj = new API(); y pones el nombre que asignaste a la clase.
__________________
- León, Guanajuato
- GV-Foto
  #8 (permalink)  
Antiguo 25/06/2010, 17:15
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
Respuesta: Problemas con mi Clase - API

creo que el problema esta en como envio las variables por POST con CURL, ya que he suprimido esas lineas de codigo y he simplificado el codigo y funciona, mira:


archivo de la clase - API
Código PHP:
<?

function conectar($conectar
    { 
        
$link=''
        if(
$conectar == 1
        { 
            
$link mysql_connect("localhost""root""root"false65536
                or die(
err(mysql_errno()));                                    
                
            
mysql_select_db("cosit"
                or die(
err(mysql_errno()));      
        } 
        if(
$conectar == 0
        { 
            
$link mysql_connect("localhost""root""root"false65536); 
                
mysql_close($link); 
        } 
    }

                 class 
API_PRUEBA{
                    private 
$rut;
                     
                    function 
_construct($rut){
                        
$this -> rut $rut;
                    }
                    
                    function 
mostrar_nombres($rut){
                        
conectar(1);
                        
$sql "SELECT * from trabajadores WHERE id = '" .$rut"'";
                        
$consulta mysql_query($sql);
                        
$muestra mysql_fetch_array($consulta);
                        
conectar(0);
                        
                        
$out =  $muestra['nombres'];
                        return 
$out;
                    }
                                
                }


?>

archivo prueba-api-2.php

Código PHP:
<?

include_once('Librerias/api/api-dllo.php');

echo 
"Prueba API 2 <br>";

var_dump($obj);

$obj = new API_PRUEBA();
echo 
$obj->mostrar_nombres(1);

?>
y el resultado en el browser

Código:
Prueba API 2 
NULL juan paulo
alguna sugerencia?

Gracias.
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #9 (permalink)  
Antiguo 25/06/2010, 17:57
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problemas con mi Clase - API

__construct ... con dos guiones bajos, no solo uno
__________________
- León, Guanajuato
- GV-Foto
  #10 (permalink)  
Antiguo 25/06/2010, 18:26
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
Respuesta: Problemas con mi Clase - API

Gracias triby, el error esta en que envio por POST al archivo de la API ya que cambie esto y funciona de mil maravillas:

en el archivo api-trabajadores
Código PHP:
$HTTP_API_KEY $_GET['API_KEY']; 
y la URL queda asi:

Código:
http://dllo/prueba-api.php?API_KEY=12345
alguna sugerencia de como solucionar este tema con el POST, creo que usar POST con cURL es mas seguro.

Gracias por su ayuda!!!
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #11 (permalink)  
Antiguo 25/06/2010, 20:24
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problemas con mi Clase - API

Busca en el foro, hay un aporte muy completo de abimaelrc sobre cURL y seguro te servira.
__________________
- León, Guanajuato
- GV-Foto
  #12 (permalink)  
Antiguo 26/06/2010, 13:06
Avatar de cadrogui  
Fecha de Ingreso: junio-2003
Mensajes: 875
Antigüedad: 20 años, 9 meses
Puntos: 5
Respuesta: Problemas con mi Clase - API

nada de nada, creo que el problema parte de un error en el diseño de la API, leo mas y me doy una vuelta por aca!!!

Gracias por su ayuda!!!!
__________________
La mejor manera de aprender es por medio de un aprendizaje significativo....

http://www.cocert.cl
  #13 (permalink)  
Antiguo 26/06/2010, 15:35
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 7 meses
Puntos: 2237
Respuesta: Problemas con mi Clase - API

Prueba primero un codigo sencillo de cURL fuera de la clase, cuando lo comprendas y domines, entonces ya lo integras... de hecho, esa debe ser la forma de trabajar, resulta muy dificil tratar de conjuntar cosas que no se dominan... lo digo por experiencia.
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: api, clase
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:30.