Foros del Web » Programando para Internet » PHP »

presentacion de datos

Estas en el tema de presentacion de datos en el foro de PHP en Foros del Web. Hola amigos, tengo el siguiente codigo para presentar atos desde MySQL Código PHP: <? $conexion  =  mysql_connect ( "localhost" ,  "root" ,  "" ); mysql_select_db ...
  #1 (permalink)  
Antiguo 11/02/2009, 03:58
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
presentacion de datos

Hola amigos, tengo el siguiente codigo para presentar atos desde MySQL
Código PHP:
<?
$conexion 
mysql_connect("localhost""root""");
mysql_select_db("virusdb"$conexion);
$result mysql_query("SELECT * FROM md5",$conexion);
echo 
"<table width=300><tr><td><b>Numero</b></td><td><b>Fecha</b></td></tr>";
while(
$row=mysql_fetch_row($result)){
echo
"<tr>
     <td>$row[0]</td><td>$row[1]</td>     
     </tr>"
;
echo
"</table>";
}
mysql_close($conexion);
?>
el cual funciona bien, pero lo que deceo hacer es que todo se muestre escalonado y no en una sola linea como lo esta haciendo y si es posible que aparesca de 2 colores, osea una linea de color blando y la siguiente de azul o verde, despues la siguiente de blanco y asi;
La segunda pregunta es como podria hacer para filtrar los datos por fechas, que me salgan las fechas de tal fecha a tal fecha, para ingresar fechas uso datetime, e tratado de hacerlo, pero no me resulta nada, si alguien me puede mostrar, de antemano gracias a todos
  #2 (permalink)  
Antiguo 11/02/2009, 05:10
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: presentacion de datos

Lo del cambio de color no es de bases de datos...

pero...

usa un numerador que se incremente en cada vuelta del while y la funcion mod para altenar lo que printas en cada vuelta:

$j=0
While ....{
if ($j%2==0{
un color
}else{
otro color
}
$j++;
}


(Tienes </table> dentro del bucle te va a cerrar la tabla despues de cada vuelta !!! MAL)

Las consultas entre fechas te tiene que funcionar siempre que pases la fecha en el formato esperado por mysql


$fechaminima='YYYY-MM-DD HH:MM:SS';
$fechamaxima='YYYY-MM-DD HH:MM:SS'


Select....
Where fecha>='$fechaminima' and fecha<='$fechamaxima';

Quim
  #3 (permalink)  
Antiguo 11/02/2009, 08:35
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: presentacion de datos

hola Quim, consegui lo sigiente:
Código PHP:
$fechaminima='2009-02-11 05:40:00';
$fechamaxima='2009-02-DD 06:40:00';
$conexion mysql_connect("localhost""root""");
mysql_select_db("virusdb"$conexion);

$result1 mysql_query("SELECT * FROM md5 WHERE fecha>='$fechaminima' and fecha<='$fechamaxima', $conexion");
echo 
"<table width=300><tr><td><b>Numero</b></td><td><b>Fecha</b></td></tr>";
$j=0;
while(
$row=mysql_fetch_row($result1)){
    if (
$j&#37;2==0){
        
echo"<tr>
              <td><a href=\"$row[0]\">$row[0]</a></td><td>$row[1]</td>     
             </tr>"
;
    }else{
        echo
"<tr>
              <td>$row[0]</td><td>$row[1]</td>     
              </tr>"
;
    }
    
$j++;
}
echo
"</table>";
mysql_close($conexion); 
pero me da error:
Cita:
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\www7\index3.php on line
  #4 (permalink)  
Antiguo 11/02/2009, 09:41
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: presentacion de datos

Alguien que tenga una idea de como podria arreglar este error,
  #5 (permalink)  
Antiguo 11/02/2009, 09:56
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: presentacion de datos

$fechamaxima='2009-02-DD 06:40:00';


ese es el error?

Supongo que esto lo has puesto bien

if ($j & # 37 ;2==0){

if($j%2==0){

(simbolo de porcentage)

Quim
  #6 (permalink)  
Antiguo 11/02/2009, 10:00
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: presentacion de datos

Tambien puedes usar BETWEEN de MySQL.

SELECT * FROM tabla WHERE fecha BETWEEN 'tuFecha1' AND 'tuFecha2'
  #7 (permalink)  
Antiguo 11/02/2009, 10:06
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: presentacion de datos

hola quimfv, si me di cuenta de ese error, lo corregi, pero sigue igual, me sigue saliendo el mismo error
  #8 (permalink)  
Antiguo 11/02/2009, 10:07
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: presentacion de datos

Agregale un or die(mysql_error()) luego de tu mysql_query.

Ese error significa que la consulta que le quieres pasar a tu funcion contiene errores.
  #9 (permalink)  
Antiguo 11/02/2009, 10:15
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: presentacion de datos

muchas gracias, el problema era que al final de cada pedido que hacia de Query, coloque
asi:
Cita:
$result1 = mysql_query("SELECT * FROM md5 WHERE fecha>='$fechaminima' and fecha<='$fechamaxima', $conexion");
y no tiene que ir $conexion; gracias a todos, suerte
  #10 (permalink)  
Antiguo 27/03/2009, 08:09
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: presentacion de datos

Hola Amigos, tengo la siguiente consulta, modifique el codigo para que me muestre estadisticas de los ingresos por meses dependiendo de la fecha:
Código PHP:
for ($i=0$i<12$i++){
        
$x $i+1;
        
$fec1 date("Y-$x-01 00:00:00");
        
$fec2 date("Y-$x-31 00:00:00");
        echo 
$fec1." ".$fec2."<br>";
        
$result mysql_query("SELECT * FROM md5 WHERE fecha>='$fec1' AND fecha<='$fec2' Order by 'fecha' DESC") or die ("no se conecto");
        while(
mysql_fetch_row($result)){
            
$j++;
        }
        echo 
$j."<br>";

como yo entiendo, el codigo que escribi deberia mostrarme los resultados de todo el año por meses, por ejemplo: en el primer mes deberia mostrar cuantos ingresois hay en mumeros, el segundo igual, y asi; pero lo que hace es en todo los meses mostrar la misma cantidad y pasado el mes de marzo(03) muestra una cifra que no es; osea, en todos los meses anteriores a marzo muestra la misma cantidad de ingresos (que esta mal ya que en enero no tengo ingresos, pero igual muestra la cantidad que tengo hasta marzo, en febrero lo mismo). si alguien tiene alguna idea, de antemano muchas gracias
  #11 (permalink)  
Antiguo 27/03/2009, 08:18
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: presentacion de datos

use esto pero no funciona:
Código PHP:
$result mysql_query("SELECT * FROM md5 WHERE fecha BETWEEN '$fec1' AND '$fec2' Order by 'fecha' DESC"
  #12 (permalink)  
Antiguo 27/03/2009, 08:24
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: presentacion de datos

el problema creo que esta en la forma en que ingreso la fecha, ya que en lugar de usar en el mes de enero 01, solo ingresa 1, como podria modificar eso
  #13 (permalink)  
Antiguo 27/03/2009, 08:32
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 2 meses
Puntos: 3
Respuesta: presentacion de datos

intente lo siguiente, pero no resulta
Código PHP:
for ($i=0$i<12$i++){
        
$x $i+1;
        if (
$i<9){
            
$fec1 date("Y-0$x-01 00:00:00");
            
$fec2 date("Y-0$x-31 00:00:00");
            echo 
$fec1." ".$fec2."<br>";
            
$result mysql_query("SELECT * FROM md5 WHERE fecha BETWEEN '$fec1' AND '$fec2' Order by 'fecha' DESC") or die ("no se conecto");
            while(
mysql_fetch_row($result)){
                
$j++;
            }
            echo 
$j."<br>";
        }else{
            
$fec1 date("Y-$x-01 00:00:00");
            
$fec2 date("Y-$x-31 00:00:00");
            echo 
$fec1." ".$fec2."<br>";
            
$result mysql_query("SELECT * FROM md5 WHERE fecha BETWEEN '$fec1' AND '$fec2' Order by 'fecha' DESC") or die ("no se conecto");
            while(
mysql_fetch_row($result)){
                
$j++;
            }
            echo 
$j."<br>";
        }

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 07:47.