Foros del Web » Programando para Internet » PHP »

Consulta de varias variables

Estas en el tema de Consulta de varias variables en el foro de PHP en Foros del Web. tengo un codigo bastante largo con el que estoy intentando hacer una consulta a partir de un formulario que trae 10 variable (cajas desplegables), lo ...
  #1 (permalink)  
Antiguo 03/06/2014, 21:00
Avatar de el_cesar  
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Consulta de varias variables

tengo un codigo bastante largo con el que estoy intentando hacer una consulta a partir de un formulario que trae 10 variable (cajas desplegables), lo que necesito es: PRIMERO, que se valide si el usuario realmente eligio solo una variable y no marco dos o mas, SEGUNDO que la variable que haya marcado haga una consulta a una determinada tabla en la bd.

Lo habia construido a partir de condicionales pero lo que me sucede es que hace la consulta, pero al final me muestra el mensaje que indica no hay info disponible en todos los casos

mi codigo es
Código PHP:
Ver original
  1. if ($estado == '1' or empty($estado)) {} else {
  2. // hacemos la consulta en la base de datos
  3. $consulta = "SELECT * FROM OM_Oportunidad WHERE estado ='$estado'";
  4. $corre_consulta = mysql_query($consulta) or die (mysql_error());
  5.  
  6. $numero_filas = mysql_num_rows($corre_consulta);
  7.  
  8. if ($numero_filas == '0' ) { echo "En el momento No existen OPM registradas para el Estado indicado, por favor intente de nuevo"; } else {
  9.  
  10. while ($res = mysql_fetch_array($corre_consulta)) {
  11. //formateamos las fechas
  12. //Fecha Inicial
  13. $fecha_inicial = $res['3'];
  14. $explotado = explode("-",$fecha_inicial);
  15. $dia_inicial=$explotado[2];
  16. $mes_inicial=$explotado[1];
  17.  
  18. $anno_inicial=$explotado[0];$meses = array("Enero ","Febrero ","Marzo ","Abril ","Mayo ","Junio ","Julio ","Agosto ","Septiembre ","Octubre ","Noviembre ","Diciembre ");$mact=$meses[$mes_inicial-1];$fecha_inicio=$mact;
  19. $fecha_inicio.=$dia_inicial;
  20. $fecha_inicio.=" de ";
  21. $fecha_inicio.=$anno_inicial;
  22. //Fecha Entrega Plan de Accion
  23. $fecha_entrega = $res['14'];
  24. $explotado2 = explode("-",$fecha_entrega);
  25. $dia_entrega=$explotado2[2];
  26. $mes_entrega=$explotado2[1];
  27. $anno_entrega=$explotado2[0];$meses2 = array("Enero ","Febrero ","Marzo ","Abril ","Mayo ","Junio ","Julio ","Agosto ","Septiembre ","Octubre ","Noviembre ","Diciembre ");$ment=$meses2[$mes_entrega-1];$fecha_entrega=$ment;
  28. $fecha_entrega.=$dia_entrega;
  29. $fecha_entrega.=" de ";
  30. $fecha_entrega.=$anno_entrega;echo "
  31. ";
  32. //Calculamos fecha pendiente o atrasada
  33. //Traemos Fecha de Hoy
  34. $ano_hoy = date('Y');
  35. $mes_hoy = date('m');
  36. $dia_hoy = date('d');
  37. //Hacemos el timestamp para cada fecha
  38.  
  39. $timestamp_entrega = mktime(0,0,0,$mes_entrega,$dia_entrega,$anno_entrega);
  40. $timestamp_hoy = mktime (0,0,0,$mes_hoy, $dia_hoy, $ano_hoy);
  41.  
  42. //Restamos las fechas
  43.  
  44. $faltan_segundos = $timestamp_entrega - $timestamp_hoy;
  45.  
  46. //Convertimos el resultado a dias
  47.  
  48. $faltan_dias = $faltan_segundos / (60 * 60 * 24);
  49.  
  50. if ($faltan_dias < 0 ){
  51. $respuesta = "
  52. <div style='color: red; font-weight: bold;'>Está atrasado ". abs($faltan_dias)." dias.</div>
  53. ";
  54. } else
  55. {
  56. $respuesta = "
  57. <div style='font-weight: bold;'>Faltan ".$faltan_dias." dia(s) para la entrega.</div>
  58. ";
  59. }
  60. include ('consulta/cliente.php');
  61. }
  62. "
  63.  
  64. ";
  65. }
  66. }
  67.  
  68. if ($tipo_accion == '1' or empty($tipo_accion)) {} else {
  69. // hacemos la consulta en la base de datos
  70. $consulta = "SELECT * FROM OM_Oportunidad WHERE tipo_accion ='$tipo_accion'";
  71. $corre_consulta = mysql_query($consulta) or die (mysql_error());
  72.  
  73. $numero_filas = mysql_num_rows($corre_consulta);
  74.  
  75. if ($numero_filas == '0' ) { echo "En el momento No existen OPM registradas para el Tipo de Accion indicado, por favor intente de nuevo"; } else {
  76.  
  77. while ($res = mysql_fetch_array($corre_consulta)) {
  78. //formateamos las fechas
  79. //Fecha Inicial
  80. $fecha_inicial = $res['3'];
  81. $explotado = explode("-",$fecha_inicial);
  82. $dia_inicial=$explotado[2];
  83. $mes_inicial=$explotado[1];
  84. $anno_inicial=$explotado[0];$meses = array("Enero ","Febrero ","Marzo ","Abril ","Mayo ","Junio ","Julio ","Agosto ","Septiembre ","Octubre ","Noviembre ","Diciembre ");$mact=$meses[$mes_inicial-1];$fecha_inicio=$mact;
  85. $fecha_inicio.=$dia_inicial;
  86. $fecha_inicio.=" de ";
  87. $fecha_inicio.=$anno_inicial;
  88. //Fecha Entrega Plan de Accion
  89. $fecha_entrega = $res['14'];
  90. $explotado2 = explode("-",$fecha_entrega);
  91. $dia_entrega=$explotado2[2];
  92. $mes_entrega=$explotado2[1];
  93. $anno_entrega=$explotado2[0];$meses2 = array("Enero ","Febrero ","Marzo ","Abril ","Mayo ","Junio ","Julio ","Agosto ","Septiembre ","Octubre ","Noviembre ","Diciembre ");$ment=$meses2[$mes_entrega-1];$fecha_entrega=$ment;
  94. $fecha_entrega.=$dia_entrega;
  95. $fecha_entrega.=" de ";
  96. $fecha_entrega.=$anno_entrega;echo "
  97. ";
  98. //Calculamos fecha pendiente o atrasada
  99. //Traemos Fecha de Hoy
  100. $ano_hoy = date('Y');
  101. $mes_hoy = date('m');
  102. $dia_hoy = date('d');
  103. //Hacemos el timestamp para cada fecha
  104.  
  105. $timestamp_entrega = mktime(0,0,0,$mes_entrega,$dia_entrega,$anno_entrega);
  106. $timestamp_hoy = mktime (0,0,0,$mes_hoy, $dia_hoy, $ano_hoy);
  107.  
  108. //Restamos las fechas
  109.  
  110. $faltan_segundos = $timestamp_entrega - $timestamp_hoy;
  111.  
  112. //Convertimos el resultado a dias
  113.  
  114. $faltan_dias = $faltan_segundos / (60 * 60 * 24);
  115.  
  116. if ($faltan_dias < 0 ){
  117. $respuesta = "
  118. <div style='color: red; font-weight: bold;'>Está atrasado ". abs($faltan_dias)." dias.</div>
  119. ";
  120. } else
  121. {
  122. $respuesta = "
  123. <div style='font-weight: bold;'>Faltan ".$faltan_dias." dia(s) para la entrega.</div>
  124. ";
  125. }
  126. include ('consulta/cliente.php');
  127. }
  128. "
  129.  
  130. ";
  131. }
y asi es con las 10 variables
__________________
Say no more.......
  #2 (permalink)  
Antiguo 04/06/2014, 02:03
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: Consulta de varias variables

¿Tienes algo encontra de la identación?

Código PHP:
<?php
if ($estado == '1' or empty($estado)) {
} else {
    
// hacemos la consulta en la base de datos
    
$consulta "SELECT * FROM OM_Oportunidad WHERE estado ='$estado'";
    
$corre_consulta mysql_query($consulta) or die(mysql_error());
    
    
$numero_filas mysql_num_rows($corre_consulta);
    
    if (
$numero_filas == '0') {
        echo 
"En el momento No existen OPM registradas para el Estado indicado, por favor intente de nuevo";
    } else {
        
        while (
$res mysql_fetch_array($corre_consulta)) {
            
//formateamos las fechas
            //Fecha Inicial
            
$fecha_inicial $res['3'];
            
$explotado     explode("-"$fecha_inicial);
            
$dia_inicial   $explotado[2];
            
$mes_inicial   $explotado[1];
            
            
$anno_inicial $explotado[0];
            
$meses        = array(
                
"Enero ",
                
"Febrero ",
                
"Marzo ",
                
"Abril ",
                
"Mayo ",
                
"Junio ",
                
"Julio ",
                
"Agosto ",
                
"Septiembre ",
                
"Octubre ",
                
"Noviembre ",
                
"Diciembre "
            
);
            
$mact         $meses[$mes_inicial 1];
            
$fecha_inicio $mact;
            
$fecha_inicio .= $dia_inicial;
            
$fecha_inicio .= " de ";
            
$fecha_inicio .= $anno_inicial;
            
//Fecha Entrega Plan de Accion
            
$fecha_entrega $res['14'];
            
$explotado2    explode("-"$fecha_entrega);
            
$dia_entrega   $explotado2[2];
            
$mes_entrega   $explotado2[1];
            
$anno_entrega  $explotado2[0];
            
$meses2        = array(
                
"Enero ",
                
"Febrero ",
                
"Marzo ",
                
"Abril ",
                
"Mayo ",
                
"Junio ",
                
"Julio ",
                
"Agosto ",
                
"Septiembre ",
                
"Octubre ",
                
"Noviembre ",
                
"Diciembre "
            
);
            
$ment          $meses2[$mes_entrega 1];
            
$fecha_entrega $ment;
            
$fecha_entrega .= $dia_entrega;
            
$fecha_entrega .= " de ";
            
$fecha_entrega .= $anno_entrega;
            echo 
"
"
;
            
//Calculamos fecha pendiente o atrasada
            //Traemos Fecha de Hoy
            
$ano_hoy date('Y');
            
$mes_hoy date('m');
            
$dia_hoy date('d');
            
//Hacemos el timestamp para cada fecha
            
            
$timestamp_entrega mktime(000$mes_entrega$dia_entrega$anno_entrega);
            
$timestamp_hoy     mktime(000$mes_hoy$dia_hoy$ano_hoy);
            
            
//Restamos las fechas
            
            
$faltan_segundos $timestamp_entrega $timestamp_hoy;
            
            
//Convertimos el resultado a dias
            
            
$faltan_dias $faltan_segundos / (60 60 24);
            
            if (
$faltan_dias 0) {
                
$respuesta "
<div style='color: red; font-weight: bold;'>Está atrasado " 
abs($faltan_dias) . " dias.</div>
"
;
            } else {
                
$respuesta "
<div style='font-weight: bold;'>Faltan " 
$faltan_dias " dia(s) para la entrega.</div>
"
;
            }
            include(
'consulta/cliente.php');
        }
        
"
 
"
;
    }
}

if (
$tipo_accion == '1' or empty($tipo_accion)) {
} else {
    
// hacemos la consulta en la base de datos
    
$consulta "SELECT * FROM OM_Oportunidad WHERE tipo_accion ='$tipo_accion'";
    
$corre_consulta mysql_query($consulta) or die(mysql_error());
    
    
$numero_filas mysql_num_rows($corre_consulta);
    
    if (
$numero_filas == '0') {
        echo 
"En el momento No existen OPM registradas para el Tipo de Accion indicado, por favor intente de nuevo";
    } else {
        
        while (
$res mysql_fetch_array($corre_consulta)) {
            
//formateamos las fechas
            //Fecha Inicial
            
$fecha_inicial $res['3'];
            
$explotado     explode("-"$fecha_inicial);
            
$dia_inicial   $explotado[2];
            
$mes_inicial   $explotado[1];
            
$anno_inicial  $explotado[0];
            
$meses         = array(
                
"Enero ",
                
"Febrero ",
                
"Marzo ",
                
"Abril ",
                
"Mayo ",
                
"Junio ",
                
"Julio ",
                
"Agosto ",
                
"Septiembre ",
                
"Octubre ",
                
"Noviembre ",
                
"Diciembre "
            
);
            
$mact          $meses[$mes_inicial 1];
            
$fecha_inicio  $mact;
            
$fecha_inicio .= $dia_inicial;
            
$fecha_inicio .= " de ";
            
$fecha_inicio .= $anno_inicial;
            
//Fecha Entrega Plan de Accion
            
$fecha_entrega $res['14'];
            
$explotado2    explode("-"$fecha_entrega);
            
$dia_entrega   $explotado2[2];
            
$mes_entrega   $explotado2[1];
            
$anno_entrega  $explotado2[0];
            
$meses2        = array(
                
"Enero ",
                
"Febrero ",
                
"Marzo ",
                
"Abril ",
                
"Mayo ",
                
"Junio ",
                
"Julio ",
                
"Agosto ",
                
"Septiembre ",
                
"Octubre ",
                
"Noviembre ",
                
"Diciembre "
            
);
            
$ment          $meses2[$mes_entrega 1];
            
$fecha_entrega $ment;
            
$fecha_entrega .= $dia_entrega;
            
$fecha_entrega .= " de ";
            
$fecha_entrega .= $anno_entrega;
            echo 
"
"
;
            
//Calculamos fecha pendiente o atrasada
            //Traemos Fecha de Hoy
            
$ano_hoy date('Y');
            
$mes_hoy date('m');
            
$dia_hoy date('d');
            
//Hacemos el timestamp para cada fecha
            
            
$timestamp_entrega mktime(000$mes_entrega$dia_entrega$anno_entrega);
            
$timestamp_hoy     mktime(000$mes_hoy$dia_hoy$ano_hoy);
            
            
//Restamos las fechas
            
            
$faltan_segundos $timestamp_entrega $timestamp_hoy;
            
            
//Convertimos el resultado a dias
            
            
$faltan_dias $faltan_segundos / (60 60 24);
            
            if (
$faltan_dias 0) {
                
$respuesta "
<div style='color: red; font-weight: bold;'>Está atrasado " 
abs($faltan_dias) . " dias.</div>
"
;
            } else {
                
$respuesta "
<div style='font-weight: bold;'>Faltan " 
$faltan_dias " dia(s) para la entrega.</div>
"
;
            }
            include(
'consulta/cliente.php');
        }
        
"
 
"
;
    }
}
PD: Aparte de que falta una } (No se donde, la puse al final... xD)
Así es más leible!

Y... pq hay " "; por ahi? O.O
__________________
>> Eleazan's Source
>> @Eleazan

Etiquetas: fecha, formulario, mysql, select, tabla, variable, variables
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 17:03.