Foros del Web » Programando para Internet » PHP »

consulta con 2 combos

Estas en el tema de consulta con 2 combos en el foro de PHP en Foros del Web. tengo este codigo donde selecciono el me s y el año, deberia mostrarme los datos del extracto de dicho mes y año pero no funciona ...
  #1 (permalink)  
Antiguo 25/03/2011, 10:33
 
Fecha de Ingreso: marzo-2010
Ubicación: colombia_santander
Mensajes: 68
Antigüedad: 14 años, 1 mes
Puntos: 0
consulta con 2 combos

tengo este codigo donde selecciono el me s y el año, deberia mostrarme los datos del extracto de dicho mes y año pero no funciona : agrdesco me colaboren


combo.php

<html> <head> <title> Extractos </title> </head> <body>
<form name='fo' method = 'POST' action='muestra.php'>
<?php
$mesActual = date('m');

$mes = array ('BF-001', 'BF-002', 'BF-003', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre' );

$anio = array ('REJILLADORA1', 'REJILLADORA2', 'CRISOL', '2002', '2001', '2000' );

echo "Mes: <select name='mes'> ";
for( $i = 0; $i <= 11; $i ++) {
$UnMes = ($mesActual+$i) % 12;
echo "<option value='{$mes[ $UnMes ]}'> {$mes[ $UnMes ]} </option>";
}
echo "</select>";




echo "Año: <select name='anio'> ";

for( $i = 0; $i <= 5; $i++ ){
echo "<option value='{$anio[$i]}'> {$anio[ $i ]} </option>";
}
echo "</select>";

?>

<input type='submit' value='Enviar' name='Enviar'>
</form>
</body>
</html>

--------------------
muestra.php
----------------------


<?php
$consulta = "SELECT * FROM maquina WHERE Usuario = {$_SESSION['usuario']} AND Mes = {$_POST['mes']}";
if ( !isset($_POST['mes']) OR !isset($_POST['anio']) ) {
header("Location: combo2.php");
} else {
$mes = $_POST['mes'];
$anio = $_POST['anio'];
$id = mysql_connect("localhost", "root", "");
mysql_select_db("mtto", $id);
$consulta = "SELECT * FROM maquina WHERE mes = $mes AND anio = $anio";
$datos = mysql_query($consulta, $id);
while( $extracto = mysql_fetch_array($datos) ) {
echo $extracto['nombmaq'] ." ". $extracto['id']; // ...
}
}
?>


-----------no me muestra nada y sale un error de
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\prueba\muestra.php on line 12
  #2 (permalink)  
Antiguo 25/03/2011, 10:41
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: consulta con 2 combos

recuerda que en php (C u otros lenguajes) los indices comienzan desde cero (0), por lo que al comparar contra el mes 1 (enero) no te dará el resultado correcto, lo ideal es aplicar como 1 el primer índice:

$mes = array (1 => 'BF-001', 'BF-002', 'BF-003', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre' );
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 25/03/2011, 10:46
 
Fecha de Ingreso: marzo-2010
Ubicación: colombia_santander
Mensajes: 68
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: consulta con 2 combos

Cita:
Iniciado por maycolalvarez Ver Mensaje
recuerda que en php (C u otros lenguajes) los indices comienzan desde cero (0), por lo que al comparar contra el mes 1 (enero) no te dará el resultado correcto, lo ideal es aplicar como 1 el primer índice:

$mes = array (1 => 'BF-001', 'BF-002', 'BF-003', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre' );
bien gracias por contestar:pero el problema esta en la pagina muestra.php
donde sale esl error:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\prueba\muestra.php on line 12
agresco me colabore, gracias
  #4 (permalink)  
Antiguo 25/03/2011, 10:46
 
Fecha de Ingreso: marzo-2010
Ubicación: colombia_santander
Mensajes: 68
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: consulta con 2 combos

el error es en la pagina muestra.php
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\prueba\muestra.php on line 12

gracias
  #5 (permalink)  
Antiguo 25/03/2011, 10:55
 
Fecha de Ingreso: febrero-2010
Mensajes: 295
Antigüedad: 14 años, 2 meses
Puntos: 58
Respuesta: consulta con 2 combos

Para empezar, te falta un signo = dentro del whlie:

$extracto == mysql_fetch_array($datos)


El error parece que está en la consulta. ¿Has probado a ponerla así?:

$consulta = "SELECT * FROM maquina WHERE mes = '$mes' AND anio = '$anio'";

(Comillas simples en las variables)
No recuerdo ahora si era obligatorio ponerlo así. Prueba a ver.

Un saludo.
  #6 (permalink)  
Antiguo 25/03/2011, 11:01
 
Fecha de Ingreso: marzo-2010
Ubicación: colombia_santander
Mensajes: 68
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: consulta con 2 combos

aparece lo siguiente

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\prueba\muestra.php on line 12

Fatal error: Maximum execution time of 30 seconds exceeded in C:\wamp\www\prueba\muestra.php on line 12
  #7 (permalink)  
Antiguo 25/03/2011, 11:33
 
Fecha de Ingreso: febrero-2010
Mensajes: 295
Antigüedad: 14 años, 2 meses
Puntos: 58
Respuesta: consulta con 2 combos

Perdón, lo del signo igual lo tenías bien, se me ha ido la pinza.

¿Has comprobado que la consulta te devuelva algún valor? Comprueba lo que tiene la variable $datos.
  #8 (permalink)  
Antiguo 25/03/2011, 12:07
 
Fecha de Ingreso: marzo-2010
Ubicación: colombia_santander
Mensajes: 68
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: consulta con 2 combos

Cita:
Iniciado por Nexus10 Ver Mensaje
Perdón, lo del signo igual lo tenías bien, se me ha ido la pinza.

¿Has comprobado que la consulta te devuelva algún valor? Comprueba lo que tiene la variable $datos.
me vota este error ejecutar : muestra.php

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\prueba\muestra.php on line 14

entocen como la compruebo..

Etiquetas: combos
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 21:09.