Foros del Web » Creando para Internet » CSS »

Imprimir tabla de la BBDD

Estas en el tema de Imprimir tabla de la BBDD en el foro de CSS en Foros del Web. Hola, ¿qué tal les va? Miren quería hacerles una consulta haber si pueden ayudarme, tengo una página en php cuya función es imprimir los datos ...
  #1 (permalink)  
Antiguo 03/12/2004, 09:55
 
Fecha de Ingreso: octubre-2004
Mensajes: 168
Antigüedad: 19 años, 6 meses
Puntos: 0
Imprimir tabla de la BBDD

Hola, ¿qué tal les va? Miren quería hacerles una consulta haber si pueden ayudarme, tengo una página en php cuya función es imprimir los datos de una tabla de la base de datos con cuatro campos. Pues para que no saliese, como ahora mismo me pasa, todo el resultado una línea tras otra, quería que saliera en forma de tabla, para ello me aconsejaron que utilizará CSS. Lo que quiero es una tabla con la primera fila el nombre del campo resaltado y luego la impresión debajo de cada uno de los valores.

He hecho un css, empecé a leer sobre ello ayer, asi que como comprenderán no sé nada. El problema es que me sigue imprimiendo como sino actuase la CSS. Aqui les pongo mi código haber si pueden ayudarme.

input-text {
background-color: #CCCCCC;
border-width: 1px;
border-style: solid;
border-color: #336699;
font-size: 9pt;
font-family: verdana, serif;
color: #333366;
.cabezatabla {
font-family: arial, verdana, serif;
font-size: 10pt;
color: #FFFFFF;
background-color: #DDDDDD;
}

Código PHP:
<html>

<head>
<link href="EstiloTabla.css" rel="stylesheet" type="text/css" />
  <title></title>
</head>

<body>

<?php
/* Conexion, seleccion de base de datos */
$enlace mysql_connect("localhost""Nombre""Contraseña")
    or die(
"No pudo conectarse : " mysql_error());
mysql_select_db("proyecto") or die("No pudo seleccionarse la BD.");

/* Realizar una consulta SQL */
$consulta  "SELECT * FROM gestores";
$resultado mysql_query($consulta) or die("La consulta fall&oacute;: " mysql_error());

/* Impresion de resultados en HTML */
while ($linea mysql_fetch_array($resultadoMYSQL_ASSOC)) {
    echo 
"\t<tr>\n";
    foreach (
$linea as $valor_col) {
        echo 
"\t\t<td>$valor_col</td>\n";
    }
    echo 
"\t</tr>\n";
}

/* Liberar conjunto de resultados */
mysql_free_result($resultado);

/* Cerrar la conexion */
mysql_close($enlace);
?>

</body>

</html>
  #2 (permalink)  
Antiguo 03/12/2004, 19:17
 
Fecha de Ingreso: octubre-2004
Mensajes: 168
Antigüedad: 19 años, 6 meses
Puntos: 0
Imprimir tabla de la BBDD

Hola, ¿qué tal les va? Miren quería hacerles una consulta haber si pueden ayudarme, tengo una página en php cuya función es imprimir los datos de una tabla de la base de datos con cuatro campos. Pues para que no saliese, como ahora mismo me pasa, todo el resultado una línea tras otra, quería que saliera en forma de tabla, para ello me aconsejaron que utilizará CSS. Lo que quiero es una tabla con la primera fila el nombre del campo resaltado y luego la impresión debajo de cada uno de los valores.

He hecho un css, empecé a leer sobre ello ayer, asi que como comprenderán no sé nada. El problema es que me sigue imprimiendo como sino actuase la CSS. Aqui les pongo mi código haber si pueden ayudarme.

input-text {
background-color: #CCCCCC;
border-width: 1px;
border-style: solid;
border-color: #336699;
font-size: 9pt;
font-family: verdana, serif;
color: #333366;
.cabezatabla {
font-family: arial, verdana, serif;
font-size: 10pt;
color: #FFFFFF;
background-color: #DDDDDD;
}
Código PHP:
<html>

<head>
<link href="EstiloTabla.css" rel="stylesheet" type="text/css" />
  <title></title>
</head>

<body>

<?php

/* Conexion, seleccion de base de datos */
$enlace mysql_connect("localhost""Nombre""Contraseña")
    or die(
"No pudo conectarse : " mysql_error());
mysql_select_db("proyecto") or die("No pudo seleccionarse la BD.");

/* Realizar una consulta SQL */
$consulta  "SELECT * FROM gestores";
$resultado mysql_query($consulta) or die("La consulta fall&oacute;: " mysql_error());

/* Impresion de resultados en HTML */
while ($linea mysql_fetch_array($resultadoMYSQL_ASSOC)) {
    echo 
"\t<tr>\n";
    foreach (
$linea as $valor_col) {
        echo 
"\t\t<td>$valor_col</td>\n";
    }
    echo 
"\t</tr>\n";
}

/* Liberar conjunto de resultados */
mysql_free_result($resultado);

/* Cerrar la conexion */
mysql_close($enlace);
?>

</body>

</html>
  #3 (permalink)  
Antiguo 03/12/2004, 19:39
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Sólo tienes que crear la tabla... Falta poner algo antes y después del while:
Código PHP:
echo "<table>";
echo 
"<tr>";
echo 
"<td>nombreCampo 1</td>";
echo 
"<td>nombreCampo 2</td>";
echo 
"<td>nombreCampo 3</td>";
echo 
"<td>nombreCampo 4</td>";
echo 
"</tr>";
/* Impresion de resultados en HTML */
while ($linea mysql_fetch_array($resultadoMYSQL_ASSOC)) {
    echo 
"\t<tr>\n";
    foreach (
$linea as $valor_col) {
        echo 
"\t\t<td>$valor_col</td>\n";
    }
    echo 
"\t</tr>\n";
}
echo 
"</table>"
Saludos
  #4 (permalink)  
Antiguo 04/12/2004, 05:05
 
Fecha de Ingreso: octubre-2004
Mensajes: 168
Antigüedad: 19 años, 6 meses
Puntos: 0
Mmm, intenté algo parecido a lo que tu me has propuesto, antes de poner mi pregunta en el foro, pero me pasa lo mismo, se me ve en forma de tabla, pero parece que no hace caso a la hoja CSS, si te fijas en el código del CSS, la cabeza de la tabla ha de ir en otros colores y ha de aparecer un reborde, pues bien se me imprime del siguiente modo:
Nombre Apellidos GrupoDeTrabajo Jefe
Manuel Prieto CHICO P.Rubio
Carlos Peris Sanchez ARCO F.Rincón
Juan Angel Enriquez de Salamanca ARCO F.Rincón
Manuel Emilio Prieto ORETO M.Prieto
Maria Perez ORETO M.Prieto

¿Alguna sugerencia?Gracias.

Edito para decir que los datos auqneu no aparezcan bien si que se ven alineados, eso si con muy poco espacio entre las columnas

Última edición por Sharik; 04/12/2004 a las 05:08
  #5 (permalink)  
Antiguo 04/12/2004, 08:36
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola Sharik.

Tienes que añadir la definición de la clase en el código que te ha puesto jpinedo:
Código PHP:
echo "<table>";
echo 
"<tr class=\"cabezatabla\">";
echo 
"<td>nombreCampo 1</td>"
pero no veo que tengas definido ningún borde

Saludos,
  #6 (permalink)  
Antiguo 04/12/2004, 13:50
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
ese input-text de donde es???

lo que ahí debería ir (creo yo) es un TD o TR, dependiendo de la que quieras formatear, o aplicarle una clase o id a la etiqueta <td> o <tr> para que jalara la CSS.

recuerda linkear la css desde tu cabecera del documento.html:
<link rel="stylesheet" type="text/css" href="directorio/de/estilo.css" />

Saludos
  #7 (permalink)  
Antiguo 04/12/2004, 16:23
 
Fecha de Ingreso: octubre-2004
Mensajes: 168
Antigüedad: 19 años, 6 meses
Puntos: 0
Lo de la referencia a la CSS si la tengo hecha, está puesto en el código del primer post. He modificado mi código de impresión aplicándole una clase a la etiqueta pero sigue sin irme. Asi lo he modificado:

Código PHP:
echo "<table>";
echo 
"<tr class=\"cabezatabla\">";
echo 
"<td>Nombre</td>";
echo 
"<td>Apellidos</td>";
echo 
"<td>Contraseña</td>";
echo 
"<td>NombreDeUsuario</td>";
echo 
"</tr>";
while (
$linea mysql_fetch_array($resultadoMYSQL_ASSOC)) {
    echo 
"\t<tr>\n";
    foreach (
$linea as $valor_col) {
        echo 
"\t\t<td>$valor_col</td>\n";
    }
    echo 
"\t</tr>\n";
}
echo 
"</table>"
  #8 (permalink)  
Antiguo 04/12/2004, 16:31
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
entonces muestra el código de tu CSS para ver si algo falla allí.

Saludos
  #9 (permalink)  
Antiguo 04/12/2004, 17:34
 
Fecha de Ingreso: octubre-2004
Mensajes: 168
Antigüedad: 19 años, 6 meses
Puntos: 0
Esta puesto el código CSS, en el primer post, pero bueno lo pondré de nuevo:
Código PHP:
input-text 
background-color#CCCCCC; 
border-width1px
border-stylesolid
border-color#336699; 
font-size9pt
font-familyverdanaserif
color#333366;
.cabezatabla 
font-familyarialverdanaserif;
font-size10pt;
color#FFFFFF;
background-color#DDDDDD;

  #10 (permalink)  
Antiguo 04/12/2004, 21:00
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
en ese caso, en vez de input-text debe ir el nombre de la clase o id, si es una clase es:

.nombre_de_clase

si es un id sería:

#nombre_de_id
  #11 (permalink)  
Antiguo 05/12/2004, 11:25
 
Fecha de Ingreso: octubre-2004
Mensajes: 168
Antigüedad: 19 años, 6 meses
Puntos: 0
Mmmm, he de decir dos cosas al transcribir el código me falto el # antes de input-text, y otra que soy muy ignorante en CSS, asi que tengo puesto:
CSS
#input-text {
background-color: #CCCCCC;
border-width: 1px;
border-style: solid;
border-color: #336699;
font-size: 9pt;
font-family: verdana, serif;
color: #333366;
.cabezatabla {
font-family: arial, verdana, serif;
font-size: 10pt;
color: #FFFFFF;
background-color: #DDDDDD;
}
Código PHP:
echo "<table>"
echo 
"<tr class=\"cabezatabla\">"
echo 
"<td>Nombre</td>"
echo 
"<td>Apellidos</td>"
echo 
"<td>Contraseña</td>"
echo 
"<td>NombreDeUsuario</td>"
echo 
"</tr>"
while (
$linea mysql_fetch_array($resultadoMYSQL_ASSOC)) { 
    echo 
"\t<tr>\n"
    foreach (
$linea as $valor_col) { 
        echo 
"\t\t<td>$valor_col</td>\n"
    } 
    echo 
"\t</tr>\n"

echo 
"</table>"
¿qué he de modificar en mi código? Supongo que faltará una referencia a input-text, pero no tengo ni idea como va. ¿Alguien para la ayuda definitiva?

Última edición por Sharik; 05/12/2004 a las 11:32
  #12 (permalink)  
Antiguo 05/12/2004, 11:33
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola Sharik

Lo siento, pero no entiendo bien como quieres que te aparezca la tabla. Quizás si explicaras bien lo que buscas o, si puedes, hacer un dibujillo y subirlo a alguna parte para que podamos verlo, seguro que podemos echarte una mano (al cuello )

Saludos,
  #13 (permalink)  
Antiguo 05/12/2004, 14:19
 
Fecha de Ingreso: octubre-2004
Mensajes: 168
Antigüedad: 19 años, 6 meses
Puntos: 0
Pues quiero que me aparezca la tabla con bordes y que la primera fila aparezca la letra en negro y el fondo en gris(algo parecido a un botón). Mmm para verlo graficamente cualquier ejemplo que haya, por ejemplo en esta página http://www.minid.net/archivos/catego..._de_tablas.php debajo del aparto de las etiquetas th. Gracias.
  #14 (permalink)  
Antiguo 05/12/2004, 16:18
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
Mira, en donde pones input-text debe ir el nombre de id o class que le diste a la etiqueta, pero si es una etiqueta que quieres formatear, entonces solo escribes el nombre de la etiqueta.

Saludos
  #15 (permalink)  
Antiguo 05/12/2004, 18:08
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 20 años, 7 meses
Puntos: 41
Además deberás definir el estilo para las celdas, no para input-text
td{

Saludos
  #16 (permalink)  
Antiguo 06/12/2004, 04:28
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Rehola.

Prueba esto:
Código HTML:
<style type="text/css">
  table {border-collapse:collapse}
  td {border:1px solid black}
  .cabezatabla {background-color:gray;font-weight:bold}
</style> 
Saludos,
  #17 (permalink)  
Antiguo 06/12/2004, 04:41
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Este mensaje está puesto también en el foro de Css y estamos contestando en dos sitios distintos. Creo que sería conveniente que algún moderador los uniese para no liarnos todos.

Saludos,
  #18 (permalink)  
Antiguo 06/12/2004, 06:23
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por JavierB
Este mensaje está puesto también en el foro de Css y estamos contestando en dos sitios distintos. Creo que sería conveniente que algún moderador los uniese para no liarnos todos.

Saludos,
Listo .. temas unidos.

Un saludo,
  #19 (permalink)  
Antiguo 06/12/2004, 09:32
 
Fecha de Ingreso: octubre-2004
Mensajes: 168
Antigüedad: 19 años, 6 meses
Puntos: 0
Finalmente lo he resuelto del siguiente modo:
El css lo he dejado asi:
Código HTML:
TD { 
background-color: #DDDDDD; 
border-width: 1px; 
border-style: solid; 
border-color: #337799; 
font-size: 9pt; 
font-family: verdana, serif; 
color: #333344;
}
.cabezatabla { 
font-family: arial, verdana, serif;
font-size: 10pt;
color: #000000;
background-color: #c0c0c0;
}
y el php ha quedado:
Código PHP:
echo "<table>";
echo 
"<tr>";
echo 
"<td class=\"cabezatabla\">Nombre</td>";
echo 
"<td class=\"cabezatabla\">Apellidos</td>";
echo 
"<td class=\"cabezatabla\">Contraseña</td>";
echo 
"<td class=\"cabezatabla\">NombreDeUsuario</td>";
echo 
"</tr>";
while (
$linea mysql_fetch_array($resultadoMYSQL_ASSOC)) {
    echo 
"\t<tr>\n";
    foreach (
$linea as $valor_col) {
        echo 
"\t\t<td>$valor_col</td>\n";
    }
    echo 
"\t</tr>\n";
}
echo 
"</table>"
Volveré ...con más preguntas css jiji
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 19:02.