Foros del Web » Programando para Internet » PHP »

Ayuda consulta php para crear tabla

Estas en el tema de Ayuda consulta php para crear tabla en el foro de PHP en Foros del Web. Hola, No tengo mucha idea de programación, pero vi este truco en la web de Ramon Castro que explica como crear formularios con Joomla y ...
  #1 (permalink)  
Antiguo 15/02/2009, 06:00
 
Fecha de Ingreso: enero-2007
Mensajes: 156
Antigüedad: 17 años, 3 meses
Puntos: 3
Ayuda consulta php para crear tabla

Hola, No tengo mucha idea de programación, pero vi este truco en la web de Ramon Castro que explica como crear formularios con Joomla y Facileforms

y lo he puesto en mi web, y me funciona muy bien, el problema es que los datos salen como en filas, es decir sale Fecha de recepcion, Empresa, Telefono,... uno debajo del otro


lo único que necesito que los datos salgan en columnas, es decir como si fuera una Hoja de calculo, que aparece Nombre (y debajo todos los nombres), Teléfono (y debajo todos los telefonos),...

He estado preguntando y me han dicho que tengo que crear una tabla y meter dentro los resultados en columnas. ¿Cómo se hace eso? Os doy el código por si me lo podeis modificar. Mil gracias

Código:
<?php
/*Este script se distribuye con la intención de que sea útil. 
El autor no se responsabiliza de su correcto funcionamiento
Ramón Castro 
Licencia: GNU/GPL
*/

//conectamos con mysql y seleccionamos base de datos

$con_mysql=mysql_connect('localhost','joomla','joomla');

if (!$con_mysql) {echo 'No se ha podido encontrar el servidor de datos';exit;}

mysql_select_db('joomla');

//consultamos

$select = mysql_query("select id,name,submitted from jos_facileforms_records where name = 'panel_empresas' order by id");

if(!$select) {echo 'No se ha podido realizar la consulta';exit;}

//montamos bucle

for($a=0;$a<(mysql_num_rows($select));$a++)
    {
    //extraemos registro
    $registro = mysql_fetch_array($select);
    //extraemos el id del registro
    $id = $registro['id'];
    $momento_envio = $registro['submitted'];
    //extraemos la fecha
    $fecha = substr($momento_envio, 0, 10);
    //pasamos la fecha a formato "normal"
    
        ereg( "([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})", $fecha, $mifecha);
        $fecha_normal=$mifecha[3]."-".$mifecha[2]."-".$mifecha[1];
        
    
    //el id de este registro es un envÃ*o
    //consultamos los valores de este envÃ*o en la tabla subrecords (el id del envÃ*o en esta tabla se llama record)
    $select_sub = mysql_query("select record,title,value from jos_facileforms_subrecords where record='$id' order by id");
    if(!$select_sub) {echo 'No se ha podido realizar la consulta';exit;}
    
    //montamos otro bucle para listar los valores de este envÃ*o, que mostraremos en una tabla
    echo '<table style="margin: auto;width:50%;border:1px solid black;">';

    //en el encabezado colocamos la fecha
    echo '<tr><td>Fecha de recepci&oacute;n</td><td>'.$fecha_normal.'</td></tr>';
    
    for($b=0;$b<(mysql_num_rows($select_sub));$b++)
        {
        $registro_sub = mysql_fetch_array($select_sub);
        echo '<tr>';
        echo '<td>'.$registro_sub['title'].'</td>';
        echo '<td>'.$registro_sub['value'].'</td>';
        echo '</tr>';
        }    
    echo '</table>';
    echo '<br />';
    }

?>
  #2 (permalink)  
Antiguo 15/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: Ayuda consulta php para crear tabla

Primero imprimes la etiqueta de la tabla,
<table>

Luego, imprimes una FILA con las columnas que desees, digamos 2:
Código:
<tr>
  <td>Nombre</td>
  <td>Telefono</td>
</tr>
Luego de eso, creas el bucle y en cada vuelta del bucle vas imprimiendo lo mismo pero esta vez en ves de Nombre y Teléfono, imprimiras las variables que corresponden al nombre y telefono obtenidos de la base de datos.
Y cuando salgas del bucle imprimes la etiqueta de cierre de la tabla </table>
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:05.