Retroceder   Foros del Web > Programación para sitios web > PHP > PHP orientado a objetos

Respuesta
 
Herramientas Desplegado
Antiguo 14-feb-2008, 12:09   #1 (permalink)
nan_do9 ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2006
Ubicación: Quito
Mensajes: 43
no funciona mi clase

que tal foro bueno tengo una clase c_roles con esta funciona

Código PHP:
function f_reporte_roles($ciudad,$mes)
    {
            
            
$o_con = new c_conexion;
            
            
//verificamos si se establecion la conexion 
            
if($o_con->f_conectar==true)
            {
                
//generamso la consulta
                
$sql "SELECT tem.emp_nombre,tem.emp_apellido,ti.ing_fecha,ti.ing_dias, ti.ing_remuneracion,ti.ing_he,ti.ing_hs,ti.ing_otros_ing,ti.ing_refrigerio,ti.ing_movilizacion, ti.ing_aporte_personal,ti.ing_total,te.egr_aporteiess,te.egr_anticipo_quincena,te.egr_prestamo, te.egr_total,tr.rol_total"
        
" FROM tbl_empleado tem,tbl_ingresos ti,tbl_egresos te, tbl_roles tr"
        
" WHERE tem.emp_ciudad = ' $ciudad '"
        
" AND tem.EMP_CEDULA = ti.EMP_CEDULA"
        
" AND tem.EMP_CEDULA = te.EMP_CEDULA"
        
" AND tr.ING_CODIGO = ti.ING_CODIGO"
        
" AND tr.EGR_CODIGO = te.EGR_CODIGO"
        
" AND MONTH( ti.ing_fecha ) = ' $mes '"
        
" AND MONTH( te.egr_fecha ) = ' $mes '";
        
              
//ejecutamos la consulta
              
$res=mysql_query($sql) or die(mysql_error());
              
              
              
$num=mysql_affected_rows() ;
              
              if(
$num>=1)
              {
                  
                return 
$res;
              }
              else
              {
                  return 
false;
              }
            
            }


    
    
    } 
y la llamo de esta manera

Código PHP:
<?
        
//incluimos el rachivo de la class
        
include("../class/c_roles.php");
                
        if(!isset(
$_POST["ciudad"]) && !isset($_POST["mes"]))
        {
        
            echo
"seleccione mes y ciudad";
            
        }
        else
        {            
            
$o_rep_rol = new c_roles;
            
            
$res_rep_rol $o_rep_rol->f_reporte_roles($ciudad,$mes);
            
            if(
$res_reporte_roles)
            {
                while(
$row=mysql_fetch_array($res_reporte_roles))
                {
                    
$nombre=$row["emp_nombre"];
                    
$apellido=$row["emp_apellido"];
                    
$total_ingresos=$row["ing_total"];
                    
                    echo 
$nombre;
                    echo 
"<br>";
                    echo 
$total_ingresos;
                
                
                }
            
            }
            else
            {
                echo 
"Error";//me imprime esto
                
            
}
        
        }
formulario
Código HTML:
<form name="form1" method="post" action="../php/res_rep_rol.php">
<select name="ciudad" id="ciudad">
      	<option></option>
        <option value="Quito">Quito</option>
        <option value="Guayquil">Guayaquil</option>
        <option value="Huaquillas">Huaquillas</option>
        <option value="Tulcan">Tulcan</option>
        <option value="Cuenca">Cuenca</option>
      </select>
<select name="mes" id="mes">
      	<option></option>
        <option value="01">Enero</option>
        <option value="02">Febrero</option>
        <option value="03">Marzo</option>
        <option value="04">Abril</option>
        <option value="05">Mayo</option>
        <option value="06">Junio</option>
        <option value="07">Julio</option>
        <option value="08">Agosto</option>
        <option value="09">Septiembre</option>
        <option value="10">Septiembre</option>
        <option value="11">Noviembre</option>
        <option value="12">Diciembre</option>
      </select>
me puede decir donde esta el error
Saludos..
nan_do9 está desconectado   Responder Citando
Antiguo 14-feb-2008, 12:13   #2 (permalink)
Moderador
GatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy pronto
 
Avatar de GatorV
 
Fecha de Ingreso: mayo-2006
Ubicación: Queretaro, Mexico
Mensajes: 11.280
Re: no funciona mi clase

Tu problema esta en que tu la variable que llamas al resultado de tu función es $res_rep_rol, y luego comparas la variable $res_reporte_roles, esas dos variables no son iguales y por eso siempre te imprime error.

Saludos.
__________________
Blog Web
GatorV está desconectado   Responder Citando
Antiguo 14-feb-2008, 12:28   #3 (permalink)
nan_do9 ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2006
Ubicación: Quito
Mensajes: 43
Re: no funciona mi clase

ya corregí en las dos partes y el error persiste

Saludos..
nan_do9 está desconectado   Responder Citando
Antiguo 14-feb-2008, 12:31   #4 (permalink)
Moderador
GatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy pronto
 
Avatar de GatorV
 
Fecha de Ingreso: mayo-2006
Ubicación: Queretaro, Mexico
Mensajes: 11.280
Re: no funciona mi clase

En ese caso es probable que tu consulta no te este regresando ninguna fila y por eso te marca el error, verifica que tu consulta esta correcta y te regresa los datos que esperas corriéndola en tu gestor favorito de bases de datos.

Saludos.
__________________
Blog Web
GatorV está desconectado   Responder Citando
Antiguo 14-feb-2008, 12:46   #5 (permalink)
nan_do9 ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2006
Ubicación: Quito
Mensajes: 43
Re: no funciona mi clase

la prueba la realice y si me genera resultados en phpmyadmin

Saludos...
nan_do9 está desconectado   Responder Citando
Antiguo 14-feb-2008, 12:51   #6 (permalink)
Moderador
GatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy pronto
 
Avatar de GatorV
 
Fecha de Ingreso: mayo-2006
Ubicación: Queretaro, Mexico
Mensajes: 11.280
Re: no funciona mi clase

Prueba cambiar esto:
Código PHP:
$num=mysql_affected_rows(); 
Por esto:
Código PHP:
$num=mysql_num_rows($res); 
Recuerda que Affected Rows es para consultas del tipo INSERT, UPDATE o DELETE.

Saludos.
__________________
Blog Web
GatorV está desconectado   Responder Citando
Antiguo 15-feb-2008, 06:24   #7 (permalink)
nan_do9 ha deshabilitado el karma
 
Fecha de Ingreso: febrero-2006
Ubicación: Quito
Mensajes: 43
Re: no funciona mi clase

GatorV

Mire probe de esta manera y me funciona sin problemas
Código PHP:
include("../Connections/con_tci.php");
    
    
$ciudad=$_POST["ciudad"];
        
$mes=$_POST["mes"];
    
    
$sql 'SELECT tem.emp_nombre, tem.emp_apellido, ti.ing_fecha, ti.ing_dias, ti.ing_remuneracion, ti.ing_he, ti.ing_hs, ti.ing_otros_ing, ti.ing_refrigerio, ti.ing_movilizacion, ti.ing_aporte_personal, ti.ing_total, te.egr_aporteiess, te.egr_anticipo_quincena, te.egr_prestamo, te.egr_total, tr.rol_total'
        
' FROM tbl_empleado tem, tbl_ingresos ti, tbl_egresos te, tbl_roles tr'
        
' WHERE tem.emp_ciudad = "'.$ciudad.'"'
        
' AND tem.EMP_CEDULA = ti.EMP_CEDULA'
        
' AND tem.EMP_CEDULA = te.EMP_CEDULA'
        
' AND tr.ING_CODIGO = ti.ING_CODIGO'
        
' AND tr.EGR_CODIGO = te.EGR_CODIGO'
        
' AND MONTH( ti.ing_fecha ) ="'.$mes.'"'
        
' AND MONTH( te.egr_fecha ) ="'.$mes.'"';
                
//ejectutamos la consulta
                
$res=mysql_query($sql) or die(mysql_error());
                
//$num=mysql_affected_rows();
                
$num=mysql_num_rows($res) or die(mysql_error()); 
                
                
//verificamos si la consulta arojo resultados
                
if($num>=1)
                {
                    
$row=mysql_fetch_array($res) or die(mysql_error());
                    
$nombre=$row["emp_nombre"];
                    
$apellido=$row["emp_apellido"];
                    
$total_ingresos=$row["ing_total"];
                    
                    echo 
$nombre;
                    echo 
"<br>";
                    echo 
$total_ingresos;
                }
                else
                {
                    echo
"no hay nada";
                    
                } 
ahora el problema debe esta en la función o en la llamada pero no logro encontrar el error ya no se que hacer

Saludos...
nan_do9 está desconectado   Responder Citando
Antiguo 15-feb-2008, 08:07   #8 (permalink)
Moderador
GatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy prontoGatorV llegará a ser famoso muy pronto
 
Avatar de GatorV
 
Fecha de Ingreso: mayo-2006
Ubicación: Queretaro, Mexico
Mensajes: 11.280
Re: no funciona mi clase

Código PHP:
function f_reporte_roles($ciudad,$mes)
    {
            
            
$o_con = new c_conexion;
            
            
//verificamos si se establecion la conexion 
            
if($o_con->f_conectar==true)
            {
                
//generamso la consulta
                
$sql "SELECT tem.emp_nombre,tem.emp_apellido,ti.ing_fecha,ti.ing_dias, ti.ing_remuneracion,ti.ing_he,ti.ing_hs,ti.ing_otros_ing,ti.ing_refrigerio,ti.ing_movilizacion, ti.ing_aporte_personal,ti.ing_total,te.egr_aporteiess,te.egr_anticipo_quincena,te.egr_prestamo, te.egr_total,tr.rol_total"
        
" FROM tbl_empleado tem,tbl_ingresos ti,tbl_egresos te, tbl_roles tr"
        
" WHERE tem.emp_ciudad = ' $ciudad '"
        
" AND tem.EMP_CEDULA = ti.EMP_CEDULA"
        
" AND tem.EMP_CEDULA = te.EMP_CEDULA"
        
" AND tr.ING_CODIGO = ti.ING_CODIGO"
        
" AND tr.EGR_CODIGO = te.EGR_CODIGO"
        
" AND MONTH( ti.ing_fecha ) = ' $mes '"
        
" AND MONTH( te.egr_fecha ) = ' $mes '";
        
              
//ejecutamos la consulta
              
$res=mysql_query($sql) or die(mysql_error());
              
              
              
$num=mysql_num_rows($res) or die( mysql_error() );
              
              if(
$num>=1)
              {
                  
                return 
$res;
              }
              else
              {
                  return 
false;
              }
            
            }


    
    
    } 
Saludos.
__________________
Blog Web
GatorV está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 21:31.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93