Este es mi Store Procedure:
Código:
y mi codigo PHP:CREATE OR REPLACE FUNCTION getadministradorlogin(character varying) RETURNS text AS $BODY$DECLARE datos administrador%ROWTYPE; result TEXT; BEGIN select into datos id_admin, login_adm, password_adm from administrador where login_adm='$1'; result := datos.id_admin||'|'||datos.login_adm||'|'||datos.password_adm; RETURN result; END;$BODY$ LANGUAGE 'plpgsql' VOLATILE COST 100; ALTER FUNCTION getadministradorlogin(character varying) OWNER TO postgres;
Código:
Gracias de antemano. $sql="select * from getadministradorlogin('".$login_admin."')"; // conexion a la BD $con=parent::open(); // se ejecuta el query $rs=parent::rs($con, $sql); $total=pg_num_rows($rs); // verifico en bd if (pg_num_rows($rs)<=0){ // el usuario no existe $arr=array(); $arr['error']='loginNO'; } else { $arr=array(); $arr['idAdmin']=pg_fetch_result($rs,0,'getadministradorlogin'); $arr['login']=pg_fetch_result($rs,0,'getadministradorlogin'); $arr['password']=pg_fetch_result($rs,0,'getadministradorlogin'); if ($arr['password']!=$password){ // password incorrecto $arr['error']='passwordNO'; } else { session_start(); $_SESSION[$varGenPLogAdmin]=$login; $_SESSION[$varGenPIdAdmin]=$arr['idAdmin']; $arr['error']='OK'; } } // se cierra la conexion a la BD parent::close($con); return $arr;