Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Estas en el tema de PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos en el foro de PHP en Foros del Web. Hola!! Gracias, de antemano por su tiempo... Mi caso es el siguiente, he realizado un formulario donde el usuario, SELECCIONA cuatro "variables", pero tengo problemas ...
  #1 (permalink)  
Antiguo 25/06/2014, 13:23
 
Fecha de Ingreso: junio-2014
Ubicación: Mexico
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Hola!! Gracias, de antemano por su tiempo...

Mi caso es el siguiente, he realizado un formulario donde el usuario, SELECCIONA cuatro "variables", pero tengo problemas al mostrar la información. Uso el metodo "POST".
Agradeceria me orientaran ¿Que me esta faltando para mostrar la informacion solicitada?

Última edición por Vicmon20; 25/06/2014 a las 13:23 Razón: Muestro el codigo que llevo al momento de la seleccion...
  #2 (permalink)  
Antiguo 25/06/2014, 13:25
 
Fecha de Ingreso: junio-2014
Ubicación: Mexico
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Esta es la parte del codigo, donde el usuario hace la SELECCION de las cuatra variables....la pregunta seria ¿Como las puedo "GUARDAR" o llevaras a la pagina donde esta el query o la consulta? GRACIAS...

<?php
set_time_limit(600);
include("conexion.php");
mysql_query("SET NAMES 'utf8'");
$conexion= mysql_connect($host,$user,$pw)or die ("Conexion con el Servidor, NO exitosa.Favor de verificar.Gracias");
mysql_select_db($db,$conexion)or die ("Conexion con BD, NO exitosa.Favor de verificar");
?>
<form action="prueba.php" method="POST">
<?php
$query = 'SELECT Distinct region FROM dinero order by region';
$region= mysql_query($query,$conexion);
?>
<p>Seleccione la Region:
<select name="Regiones">
<?php
while ( $row = mysql_fetch_array($region) )
{
?>
<option value=" <?php echo $row['region'];?> " >
<?php echo $row['region']; ?>
</option>
<?php
}
?>
</select>
<?php
$query4= 'SELECT Distinct servicio FROM dinero order by servicio';
$servicio= mysql_query($query4, $conexion);
?>
<p>Seleccione el servicio:
<select name="Servicios">
<?php
while ( $row = mysql_fetch_array($servicio) )
{
?>
<option value=" <?php echo $row['servicio'] ;?> " >
<?php echo $row['servicio']; ?>
</option>
<?php
}
?>
</select>
<?php
$query2= 'SELECT Distinct fecha FROM dinero order by fecha';
$fecha= mysql_query($query2, $conexion);
?>
<p>Fecha inicial:
<select name="Fecha">
<?php
while ( $row = mysql_fetch_array($fecha) )
{
?>
<option value=" <?php echo $row['fecha'] ;?> " >
<?php echo $row['fecha']; ?>
</option>
<?php
}
?>
</select>
<?php
$query3= 'SELECT Distinct fecha FROM dinero order by fecha';
$fechafin= mysql_query($query3,$conexion);
?>
<p>Fecha Final:
<select name="Fechafin">
<?php
while ( $row = mysql_fetch_array($fechafin) )
{
?>
<option value=" <?php echo $row['fecha'] ;?> " >
<?php echo $row['fecha']; ?>
</option>
<?php
}
?>
</select>
<p><input type="submit" value="Consultar" /></p>
</form>

Saludos
Desde la Cd de México

Última edición por Vicmon20; 25/06/2014 a las 13:27 Razón: Falto citar la pregunta
  #3 (permalink)  
Antiguo 25/06/2014, 15:51
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Buenas, por favor utiliza el Highlight para portear codigo.

Para recuperar los valores enviado mediante el form por metodo POST utiliza $_POST['nombre_campo']

ejemplo:

Código PHP:
Ver original
  1. $region = $_POST['regiones'];
  2.  
  3. echo $region;
  #4 (permalink)  
Antiguo 25/06/2014, 17:34
 
Fecha de Ingreso: junio-2014
Ubicación: Mexico
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Código PHP:
$region=$_POST['Regiones'];
$servicio=$_POST['Servicios'];
$fecha=$_POST['Fecha'];
$fechafin=$_POST['Fechafin'];

$reporte=mysql_query("SELECT region,servicio,id_cuenta,
(CONCAT('$ ',FORMAT((Monto),2))) as monto,fecha    
FROM dinero WHERE Region='$region' 
and servicio='$servicio'
and fecha BETWEEN '$fecha' and '$fechafin'
order by fecha,id_cuenta"
);
        echo 
"<center><table border='5'>";    
        echo 
"<th>Region</th><th>Servicio</th><th>Id_cuenta</th><th>Monto</th><th>Fecha</th>";    
    while(
$reglon=mysql_fetch_array($reporte))
    {
      echo 
"<tr>";
      echo 
"<td><center>" $reglon ['region']. "</center></td>";
      echo 
"<td>" $reglon ['servicio']. "</td>";
      echo 
"<td>" $reglon ['id_cuenta']. "</td>";
      echo 
"<td><center>" $reglon ['monto']. "</center></td>";
      echo 
"<td><center>" $reglon ['fecha']. "</center></td>";
      echo 
"</tr>";
    }
    echo 
"</table></center>"
    
mysql_free_result($reporte);
?>
</body>
</html> 

Última edición por Vicmon20; 25/06/2014 a las 17:37 Razón: Este es el codigo de la pagina que Recibe el valor de las "Variables", pero la consulta no me arroja resultados...
  #5 (permalink)  
Antiguo 25/06/2014, 17:38
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Era eso entonces lo que necesitabas? de ser asi dalo por solucionado
  #6 (permalink)  
Antiguo 25/06/2014, 17:47
 
Fecha de Ingreso: junio-2014
Ubicación: Mexico
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Hola,

Te comento que no ha quedado solucionado, la consulta me la trae en blanco, NO me muestra dato alguno.
Lo he probado con una solo variable, en este caso [region] y me trae la información, pero, algo me falta que no puedo hacer que al agregar variables la consulta se exitosa.
¿Que mas puedo hacer? ¿alguna sugerencia?

Saludos de la Cd. de México.
  #7 (permalink)  
Antiguo 25/06/2014, 17:51
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Lo primero pegar el codigo de una forma legible
Código PHP:
Ver original
  1. <?php
  2. include("conexion.php");
  3. mysql_query("SET NAMES 'utf8'");
  4. $conexion= mysql_connect($host,$user,$pw)or die ("Conexion con el Servidor, NO exitosa.Favor de verificar.Gracias");
  5. mysql_select_db($db,$conexion)or die ("Conexion con BD, NO exitosa.Favor de verificar");
  6. ?>
  7. <form action="prueba.php" method="POST">
  8. <?php
  9. $query = 'SELECT Distinct region FROM dinero order by region';
  10. $region= mysql_query($query,$conexion);
  11. ?>
  12. <p>Seleccione la Region:
  13. <select name="Regiones">
  14. <?php
  15. while ( $row = mysql_fetch_array($region) )
  16. {
  17. ?>
  18. <option value=" <?php echo $row['region'];?> " >
  19. <?php echo $row['region']; ?>
  20. </option>
  21. <?php
  22. }
  23. ?>
  24. </select>
  25. <?php
  26. $query4= 'SELECT Distinct servicio FROM dinero order by servicio';
  27. $servicio= mysql_query($query4, $conexion);
  28. ?>
  29. <p>Seleccione el servicio:
  30. <select name="Servicios">
  31. <?php
  32. while ( $row = mysql_fetch_array($servicio) )
  33. {
  34. ?>
  35. <option value=" <?php echo $row['servicio'] ;?> " >
  36. <?php echo $row['servicio']; ?>
  37. </option>
  38. <?php
  39. }
  40. ?>
  41. </select>
  42. <?php
  43. $query2= 'SELECT Distinct fecha FROM dinero order by fecha';
  44. $fecha= mysql_query($query2, $conexion);
  45. ?>
  46. <p>Fecha inicial:
  47. <select name="Fecha">
  48. <?php
  49. while ( $row = mysql_fetch_array($fecha) )
  50. {
  51. ?>
  52. <option value=" <?php echo $row['fecha'] ;?> " >
  53. <?php echo $row['fecha']; ?>
  54. </option>
  55. <?php
  56. }
  57. ?>
  58. </select>
  59. <?php
  60. $query3= 'SELECT Distinct fecha FROM dinero order by fecha';
  61. $fechafin= mysql_query($query3,$conexion);
  62. ?>
  63. <p>Fecha Final:
  64. <select name="Fechafin">
  65. <?php
  66. while ( $row = mysql_fetch_array($fechafin) )
  67. {
  68. ?>
  69. <option value=" <?php echo $row['fecha'] ;?> " >
  70. <?php echo $row['fecha']; ?>
  71. </option>
  72. <?php
  73. }
  74. ?>
  75. </select>
  76. <p><input type="submit" value="Consultar" /></p>
  77. </form>
  #8 (permalink)  
Antiguo 25/06/2014, 18:10
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Creo que tu problema por lo que me dices esta en la consulta sql
Código PHP:
Ver original
  1. $reporte=mysql_query("SELECT region,servicio,id_cuenta,
  2. (CONCAT('$ ',FORMAT((Monto),2))) as monto,fecha    
  3. FROM dinero WHERE Region='$region'
  4. and servicio='$servicio'
  5. and fecha BETWEEN '$fecha' and '$fechafin'
  6. order by fecha,id_cuenta");

que es lo que quieres extraer realmente de la bd?

prueba con una consulta mas simple

Código PHP:
$reporte=mysql_query("SELECT * FROM dinero 
WHERE fecha BETWEEN '$fecha' AND '$fechafin'
AND servicio='$servicio
AND region='$region' 
ORDER BY fecha,id_cuenta"
); 
  #9 (permalink)  
Antiguo 26/06/2014, 08:16
 
Fecha de Ingreso: junio-2014
Ubicación: Mexico
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Hola! Buen día.
Gracias por la sugerencia, es cierto como comentas al realizar una consulta "mas sencilla" resulta bien; es decir Si y solo Si coloco una solo variable, me funciona bien.
Considero que el "problema" esta en la secuencia del
<form action="prueba.php" method="POST">
  #10 (permalink)  
Antiguo 26/06/2014, 08:27
 
Fecha de Ingreso: junio-2014
Ubicación: Mexico
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Código PHP:
Ver original
  1. <form action="pruebadinero.php" method="POST">
  2. <?php
  3. $query =
  4. $region=
  5. ?>
  6. <p>Seleccione la Region:
  7. <select name="regiones">
  8.     <?php
  9.    
  10.     ?>
  11. </select>
  12. <?php
  13. $query2=
  14. $servicio=
  15. ?>
  16. <p>Seleccione el servicio:
  17. <select name="servicios">
  18.     <?php
  19.    
  20.     ?>
  21. </select>
  22. <?php
  23. $query3=
  24. $fecha=
  25. ?>
  26. <p>Fecha inicial:
  27. <select name="fecha">
  28.     <?php
  29.    
  30.     ?>
  31. </select>
  32. <?php
  33. $query4=
  34. $fechafin=
  35. ?>
  36. <p>Fecha Final:
  37. <select name="fechafin">
  38.     <?php
  39.    
  40.     ?>
  41. </select>
  42. <p><input type="submit" value="Consultar" /></p>
  43. </form>

Última edición por Vicmon20; 26/06/2014 a las 08:29 Razón: ¿Quizas me falte alguna estructura para guardar las variables? GRACIAS
  #11 (permalink)  
Antiguo 26/06/2014, 09:19
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

Esas mayúsculas.... ains! xD

De todas formas, te recomiendo usar una forma parecida a esta:
Ej:
Código PHP:

$reporte 
mysql_query("SELECT esto FROM aqui blablabla") or die(mysql_error()); 
Así sabrías pq falla la consulta, y ya si te lo curras más:

Código PHP:

$consulta 
"SELECT esto FROM aqui blablabla";
$reporte mysql_query($consulta) or die("Se produjo un error de MYSQL, consulta:<br>".$consulta."<br>Error:".mysql_error()); 
Te será más fácil encontrar esos fallos... ;)

PD: Aunq sería mejor usar mysqli_ que mysql_... ains!
__________________
>> Eleazan's Source
>> @Eleazan
  #12 (permalink)  
Antiguo 26/06/2014, 10:04
 
Fecha de Ingreso: junio-2014
Ubicación: Mexico
Mensajes: 14
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: PHP MySql Al Seleccionar 4 variables o mas...No me trae los datos

GRACIAS, por los consejos y observaciones!!! Solucionado....
La estructura que me ayudo,fue la siguiente:

Código PHP:
Ver original
  1. <select name="fechafin">
  2.     <?php
  3.     while ( $row = mysql_fetch_array($fechafin) )
  4.     {
  5.     ?>
  6.     <option name="fechafin" value="<?php echo $row['fecha'] ;?> " >
  7.     <?php echo $row['fecha']; ?>
  8.     </option>
  9.     <?php
  10.      }
  11.     ?>
  12. </select>

Es decir declarar en la linea <option name ="fechafin"... y listo, la consulta con 4 variables seleccionadas por combox; ahora lo probare con mas variables, a ver que tal...
SALUDOS!!

Etiquetas: formulario, mysql, 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 18:06.