Foros del Web » Programando para Internet » PHP »

Consulta sql desde php

Estas en el tema de Consulta sql desde php en el foro de PHP en Foros del Web. Hola amigos, Mi consulta es sobre lo siguiente, estoy trabajando en una consulta que muestra stock de material mi idea es hacer que se cambie ...
  #1 (permalink)  
Antiguo 10/10/2012, 09:18
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Consulta sql desde php

Hola amigos,

Mi consulta es sobre lo siguiente, estoy trabajando en una consulta que muestra stock de material

mi idea es hacer que se cambie el fondo del <td> de cierto color cuando el valor esta bajo el minimo y otro color cuando este sobre el maximo

Tablas a ocupar
-Cantidad
-Min (minimo)

La consulta que actualmente realizo:

Código:
$query_movimiento = ("SELECT * FROM equipos ORDER BY `modelo` ASC");
$movimiento = mysql_query($query_movimiento) or die ( "Error en query: $sql, el error  es: " . mysql_error() );//(mysql_error());
$row_movimiento = mysql_fetch_assoc($movimiento);
$totalRows_movimiento = mysql_num_rows($movimiento);


el codigo PHP que he intentado realizar:

Código:
//if($row_movimiento['cantidad']=<$row_movimiento['min']){
$valo1='#FF9B9B';
} else {
$valo1='#77FF65';
}

$valo1='#77FF65';
$valo2='#FF9B9B';

Pero me aparece un error, me puedo ayudar, como lo puedo hacer?

una vista previa de como se ve el script sin el codigo php que intente hacer:
  #2 (permalink)  
Antiguo 10/10/2012, 11:03
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Consulta sql desde php

Hola filip_ps,

Creo que sería buena idea que pusieras algo más del código para ver cómo tienes estructurada la tabla, los estilos, etc. Sería más fácil ayudarte.

.
  #3 (permalink)  
Antiguo 10/10/2012, 11:36
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: Consulta sql desde php

Cita:
Iniciado por rbczgz Ver Mensaje
Hola filip_ps,

Creo que sería buena idea que pusieras algo más del código para ver cómo tienes estructurada la tabla, los estilos, etc. Sería más fácil ayudarte.

.
Tambien seria importante que nos digas que error aparece.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #4 (permalink)  
Antiguo 11/10/2012, 08:37
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Consulta sql desde php

El codigo de mi pagina es (de momento esta asi):



Código:
<?php require '../conectar.php'; ?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Materiales genericos</title>
<link href="../menu.css" rel="stylesheet" type="text/css" />
<link href="../form.css" rel="stylesheet" type="text/css" />
</head>

<body>

<div id="principal">

  <div id="cabecera"> 
    <div id="titulo"> 
      <center>
      <h1>Materiales genericos</h1>
      </center>
    </div>
  </div>
  

<p>&nbsp;</p>
<p>&nbsp;</p>

</body>
</html>

<?php	

$query_movimiento = ("SELECT * FROM equipos ORDER BY `modelo` ASC");
$movimiento = mysql_query($query_movimiento) or die ( "Error en query: $sql, el error  es: " . mysql_error() );//(mysql_error());
$row_movimiento = mysql_fetch_assoc($movimiento);
$totalRows_movimiento = mysql_num_rows($movimiento);




//if($row_movimiento['cantidad']=<$row_movimiento['min']){
//$valo1='#FF9B9B';
//} else {
//$valo1='#77FF65';
//}


?>


<center>
<table style="border:1px #FF0000; color:#000000; width:990px; text-align:center;">
<tr style="background:#FFD700;">
	<td>Tipo</td>
	<td>Stock minimo</td>
	<td>Stock actual</td>
	
</tr>
    <?php do { ?>
	<tr bgcolor='#FFFACD'>
	  <td align='left'><?php echo $row_movimiento['modelo']; ?></td>
	  <td><?php echo $row_movimiento['min']; ?></td>  	  
          <td bgcolor='<? echo $valo1 ?>'><?php echo $row_movimiento['cantidad']; ?></td>
	</tr>
	
	<?php } while ($row_movimiento= mysql_fetch_assoc($movimiento)); ?>


</table>
</center>

El error que aparece es al añadir la linea del IF

que puedo hacer para que cuando un articulo este bajo segun su minimo se marque de color rojo, Gracias por el interes de ayudarme desde ya :)
  #5 (permalink)  
Antiguo 11/10/2012, 10:03
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Consulta sql desde php

Cita:
Iniciado por filip_ps Ver Mensaje
El error que aparece es al añadir la linea del IF
Pero, filip_ps, ¿cuál es el error? Es que con la información que nos das, es muy difícil poder ayudarte, date cuenta que cuanta más información nos des, mejor podremos ayudarte.

Se me ocurre, así a bote pronto:
  • Campos de tu tabla (para saber qué campos debemos comparar)
  • Error que te da (sin esto, es muy difícil saber qué podemos hacer para ayudarte)

Vamos, que ya casi lo conseguimos!!

.
  #6 (permalink)  
Antiguo 11/10/2012, 10:43
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Consulta sql desde php

Código:
Parse error: syntax error, unexpected '<' in /home/XXXX/public_html/movimiento_compu.php on line 68


Linea 68
Código:
if($row_movimiento['cantidad']=<$row_movimiento['min']){



el codigo que inserto es
Código:
 if($row_movimiento['cantidad']=<$row_movimiento['min']){
$valo1='#FF9B9B';
} else {
$valo1='#77FF65';
}
estara correcto?
  #7 (permalink)  
Antiguo 11/10/2012, 10:54
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Consulta sql desde php

Hola filip_ps,

Prueba así:

Código PHP:
Ver original
  1. if($row_movimiento['cantidad'] <= $row_movimiento['min']){

Se me ocurre que pudiera ser por hacer la comparación con el = antes que el <, no lo he probado pero puede ser por eso.

Ya nos contarás qué tal.

.
  #8 (permalink)  
Antiguo 12/10/2012, 11:45
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Consulta sql desde php

Funciono pero quedo todo asi y debe ser solo cuando este bajo

  #9 (permalink)  
Antiguo 12/10/2012, 12:19
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Consulta sql desde php

Hola filip_ps,

Por lo menos ya hemos eliminado el error.

Ahora te sugiero que hagas una cosa: Reléete todo este hilo y analiza si has hecho todo lo que te hemos sugerido, yo creo que te falta algo fundamental y (una pista) no es en tu programación.

Cuando lo veas y actúes en consecuencia, nos avisas, a ver si te podemos ayudar que lo resuelvas del todo.

.
  #10 (permalink)  
Antiguo 12/10/2012, 12:46
Avatar de afrika026  
Fecha de Ingreso: junio-2011
Mensajes: 85
Antigüedad: 12 años, 10 meses
Puntos: 19
Respuesta: Consulta sql desde php

El error que veo en la sentencia if es cuando vos pones "menor o igual" lo haces así:
"=<", eso esta mal, la manera correcta es es "<=", entonces el codigo quedaría:

if($row_movimiento['cantidad']<=$row_movimiento['min']){
$valo1='#FF9B9B';
} else {
$valo1='#77FF65';
}
  #11 (permalink)  
Antiguo 12/10/2012, 13:47
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Consulta sql desde php

Probe como comentaste pero todo queda de rojo y solo deberia quedar de rojo los que estan bajo el nivel de minimo.
  #12 (permalink)  
Antiguo 12/10/2012, 14:53
Avatar de afrika026  
Fecha de Ingreso: junio-2011
Mensajes: 85
Antigüedad: 12 años, 10 meses
Puntos: 19
Respuesta: Consulta sql desde php

Entonces si queres que esten en rojo solo los que esten por debajo del minimo tenes que poner "<" y no "<=".
  #13 (permalink)  
Antiguo 12/10/2012, 15:12
Avatar de afrika026  
Fecha de Ingreso: junio-2011
Mensajes: 85
Antigüedad: 12 años, 10 meses
Puntos: 19
Respuesta: Consulta sql desde php

Por otra parte estoy notando que no estas recorriendo con un bucle el array $row_movimiento que es donde se guardo la consulta mediante mysql_fetch_assoc($movimiento).

La manera de recorrerlo seria la siguiente: Primero eliminá la linea $totalRows_movimiento = mysql_num_rows($movimiento)

y luego pone este codigo:

while ($totalRows_movimiento = mysql_num_rows($movimiento)) {
if($row_movimiento['cantidad']<$row_movimiento['min']){
$valo1='#FF9B9B';
} else {
$valo1='#77FF65';
}
}
  #14 (permalink)  
Antiguo 12/10/2012, 15:42
 
Fecha de Ingreso: octubre-2009
Mensajes: 48
Antigüedad: 14 años, 6 meses
Puntos: 2
Respuesta: Consulta sql desde php

yo tengo una aplicacion donde coloreo celdas dependiendo de un numero, esto lo aplico a unas consultas de escuelas de una evaluacion que realizaron, el puntaje que la escuela obtiene se compara con un puntaje nacional y si esta por encima del puntaje esta verde y esta por debajo del puntaje se pone rojo, no se si sea algo asi lo que quieres hacer????
  #15 (permalink)  
Antiguo 14/10/2012, 23:14
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Consulta sql desde php

Hola filip_ps,

Creo que a todos nos gustaría saber si ya conseguiste resolver tu problema y si es así cómo lo hiciste, además de por saber si nuestra ayuda te sirvió de algo, también es bueno que publiques la solución por si alguien se encuentra en la misma situación que tú, de esa forma, tú también puedes ayudar a otros.

.
  #16 (permalink)  
Antiguo 15/10/2012, 12:22
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Consulta sql desde php

Disculpen el retraso pero no habia tenido tiempo para conectarme, veo de inmediato lo que me comentan, desde ya un gracias por el apoyo
  #17 (permalink)  
Antiguo 15/10/2012, 14:58
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Consulta sql desde php

Bueno he modificado el codigo como me lo comento afrika026 y se queda cargando al ejecutar la consulta y luego arroja el siguiente error:

Fatal error: Maximum execution time of 30 seconds exceeded in /home/xxx/public_html/movimiento_compu.php on line 69
  #18 (permalink)  
Antiguo 15/10/2012, 22:41
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Consulta sql desde php

Cita:
Iniciado por afrika026 Ver Mensaje
Por otra parte estoy notando que no estas recorriendo con un bucle el array $row_movimiento que es donde se guardo la consulta mediante mysql_fetch_assoc($movimiento).

La manera de recorrerlo seria la siguiente: Primero eliminá la linea $totalRows_movimiento = mysql_num_rows($movimiento)

y luego pone este codigo:

while ($totalRows_movimiento = mysql_num_rows($movimiento)) {
if($row_movimiento['cantidad']<$row_movimiento['min']){
$valo1='#FF9B9B';
} else {
$valo1='#77FF65';
}
}
o.O estas consciente de lo que estas haciendo en el while? eso esta completamente mal..., la forma correcta es como el la tiene, lo que esta mal es usar "do while" ya que este hace un primer recorrido antes de verificar si hay items en mysql_fetch_assoc, para que se entienda mas fail, supongamos que la sentencia SQL no retorna ningún item desde la DB, lo que hará "do while" es que intentará imprimir el primer item aunque no exista ninguno, en cambio "while" a secas primero verifica si se retorno algún item antes de hacer el primer recorrido...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #19 (permalink)  
Antiguo 18/10/2012, 14:15
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Consulta sql desde php

No se que hacer, igual agradesco mucho el interez en ayudarme
  #20 (permalink)  
Antiguo 19/10/2012, 00:32
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Consulta sql desde php

Cita:
Iniciado por filip_ps Ver Mensaje
No se que hacer, igual agradesco mucho el interez en ayudarme
Hola filip_ps



Si te fijas en unos post más arriba, verás que te escribí esto:

Cita:
Iniciado por rbczgz Ver Mensaje
Ahora te sugiero que hagas una cosa: Reléete todo este hilo y analiza si has hecho todo lo que te hemos sugerido, yo creo que te falta algo fundamental y (una pista) no es en tu programación.

Cuando lo veas y actúes en consecuencia, nos avisas, a ver si te podemos ayudar que lo resuelvas del todo.

Esto te lo dije para que analizaras en concreto donde te decía:

Cita:
Iniciado por rbczgz Ver Mensaje
Pero, filip_ps, ¿cuál es el error? Es que con la información que nos das, es muy difícil poder ayudarte, date cuenta que cuanta más información nos des, mejor podremos ayudarte.

Se me ocurre, así a bote pronto:
  • Campos de tu tabla (para saber qué campos debemos comparar)
  • Error que te da (sin esto, es muy difícil saber qué podemos hacer para ayudarte)
Nos dijiste el error, pero no los campos de tu tabla, por lo que no podemos saber si estás comparando con las consultas correctas o no.

Realmente lo que pretendes hacer creo que es algo bastante sencillo, pero sin tener la información necesaria, es muy difícil acertar en el punto donde falla tu aplicación.

Sobre todo no te desanimes, con empeño, paciencia y ayuda (si se necesita) se consigue casi todo.

.
  #21 (permalink)  
Antiguo 19/10/2012, 00:54
 
Fecha de Ingreso: octubre-2012
Ubicación: santiago
Mensajes: 3
Antigüedad: 11 años, 6 meses
Puntos: 1
Respuesta: Consulta sql desde php

pilip_ps
Al comienzo pusiste el siguiente codigo:
//if($row_movimiento['cantidad']=<$row_movimiento['min']){
$valo1='#FF9B9B';
} else {
$valo1='#77FF65';
}

$valo1='#77FF65';
$valo2='#FF9B9B';

Luego de hacer la consulta, le das un nuevo valor a $valo1. Por eso te deja el color igual en todas las celdas.

[URL="http://www.ehspos.cl"]Diseño web EHSPOS[/URL]

Última edición por ehspos; 19/10/2012 a las 01:12
  #22 (permalink)  
Antiguo 19/10/2012, 07:33
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: Consulta sql desde php

lo de:
$valo1='#77FF65';
$valo2='#FF9B9B';



eso lo tengo por mientras pero al momento de realizar lo que comento lo quito.

he releido el tema pero he intentado de varias formas sin exito

estoy trabajando en 1 sola tabla (ocupando 2 columnas)
cantidad y min

(la consulta esta bien ya que me arroja valores pero solo los colores no los pone adecuadamente)
  #23 (permalink)  
Antiguo 20/10/2012, 00:49
 
Fecha de Ingreso: noviembre-2003
Ubicación: Zaragoza, España
Mensajes: 1.257
Antigüedad: 20 años, 5 meses
Puntos: 154
Respuesta: Consulta sql desde php

Hola de nuevo filip_ps,

El tema es que yo quería que pensaras y dedujeras tú mismo la solución, pero puesto que no la encuentras, aquí la tienes, probada y funcionando:

Código PHP:
Ver original
  1. <?php require '../conectar.php'; ?>
  2.  
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml">
  5. <head>
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. <title>Materiales genericos</title>
  8. <link href="../menu.css" rel="stylesheet" type="text/css" />
  9. <link href="../form.css" rel="stylesheet" type="text/css" />
  10. </head>
  11.  
  12. <body>
  13.  
  14. <div id="principal">
  15.  
  16.   <div id="cabecera">
  17.     <div id="titulo">
  18.       <center>
  19.       <h1>Materiales genericos</h1>
  20.       </center>
  21.     </div>
  22.   </div>
  23.  
  24.  
  25. <p>&nbsp;</p>
  26. <p>&nbsp;</p>
  27.  
  28. </body>
  29. </html>
  30.  
  31. <?php  
  32.  
  33. $query_movimiento = ("SELECT * FROM equipos ORDER BY `modelo` ASC");
  34. $movimiento = mysql_query($query_movimiento) or die ( "Error en query: $sql, el error  es: " . mysql_error() );
  35.  
  36. ?>
  37.  
  38.  
  39. <center>
  40. <table style="border:1px #FF0000; color:#000000; width:990px; text-align:center;">
  41. <tr style="background:#FFD700;">
  42.     <td>Tipo</td>
  43.     <td>Stock minimo</td>
  44.     <td>Stock actual</td>
  45.    
  46. </tr>
  47.     <?php
  48.     while($row_movimiento = mysql_fetch_array($movimiento)) {
  49.       if($row_movimiento['cantidad']<$row_movimiento['minimo']){
  50.         $valo1='#FF9B9B';
  51.         } else {
  52.         $valo1='#77FF65';
  53.         }
  54.     ?>
  55.     <tr bgcolor='#FFFACD'>
  56.       <td align='left'><?php echo $row_movimiento['modelo']; ?></td>
  57.       <td><?php echo $row_movimiento['minimo']; ?></td>      
  58.           <td bgcolor='<? echo $valo1 ?>'><?php echo $row_movimiento['cantidad']; ?></td>
  59.     </tr>
  60.    
  61.     <?php } ?>
  62.  
  63.  
  64. </table>
  65. </center>

Espero que te sirva, si es así, no olvides decirlo para que otra persona que tenga la misma duda, pueda resolverla también.
  #24 (permalink)  
Antiguo 20/10/2012, 08:35
 
Fecha de Ingreso: octubre-2012
Ubicación: Talca
Mensajes: 13
Antigüedad: 11 años, 6 meses
Puntos: 0
De acuerdo Respuesta: Consulta sql desde php

la verdad no lo habia pensado hay, muy buena idea!

Gracias lo ire a probar a ver como va.

si funciona te doy un hijo :D jeje


Saludos

Etiquetas: mysql, sql, tabla
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 16:01.