Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] tabla dinamica siempre me devuelve el mismo registro en vez de todos?

Estas en el tema de tabla dinamica siempre me devuelve el mismo registro en vez de todos? en el foro de PHP en Foros del Web. quiero cargar los registros dinamicamente en una tabla mediante php pero el codigo solo me muestra el mismo registro (el primero) tantas veces como registros ...
  #1 (permalink)  
Antiguo 01/05/2016, 18:49
 
Fecha de Ingreso: diciembre-2015
Mensajes: 115
Antigüedad: 8 años, 4 meses
Puntos: 2
Pregunta tabla dinamica siempre me devuelve el mismo registro en vez de todos?

quiero cargar los registros dinamicamente en una tabla mediante php pero el codigo solo me muestra el mismo registro (el primero) tantas veces como registros haya en la tabla, en que estoy fallando?

Código PHP:
<?php 
require('db_conexion.php');
$show_posts=$conexion->query("SELECT id_post,titulo,fecha,leido FROM post ORDER BY id_post DESC");
if (
$show_posts->num_rows==0) {
    echo 
"No hay ningun post registrado hasta el momento...";
}else{
    while (
$posts$show_posts->fetch_array()) {
        
$post=$posts['titulo'];
        
$readed=$posts['leido'];
        
$date=$posts['fecha'];

        
$info'<tbody>
           <tr>
             <td>'
.$post.'</th>
             <td>'
.$readed.'</td>
             <td>'
.$date.'</td>
             <td>editar - eliminar</td>
           </tr>
        </tbody>'

}
}
?>
Código HTML:
Ver original
  1. <section class="admin-posts">
  2. <table border="1">
  3.         <caption>Administrar Posts</caption>
  4.  
  5.         <colgroup>
  6.            <col />
  7.            <col />
  8.            <col />
  9.         </colgroup>
  10.  
  11.         <thead>
  12.            <tr>
  13.              <th scope="col">Post</th>
  14.              <th scope="col">Leido</th>
  15.              <th scope="col">Fecha</th>
  16.              <th scope="col">Admin</th>
  17.            </tr>
  18.         </thead>
Código PHP:
Ver original
  1. <?php  for($i=0;$i<$show_posts->num_rows;$i++){
  2.         echo $info;
  3.         } ?>
  4. </table>
  #2 (permalink)  
Antiguo 01/05/2016, 20:31
Usuario no validado
 
Fecha de Ingreso: abril-2008
Mensajes: 50
Antigüedad: 16 años
Puntos: 16
Respuesta: tabla dinamica siempre me devuelve el mismo registro en vez de todos?

Código MySQL:
Ver original
  1. create table post (id_post int auto_increment, titulo varchar(100), fecha timestamp, leido tinyint default 0, primary key (id_post));
  2. insert into post (titulo, fecha, leido)
  3. values ('Veinte mil leguas de viaje submarino', now(), 0),
  4.         ('Un capitán de 15 años', now(), 1),
  5.         ('Ilusiones', now(), 1),
  6.         ('Raíces', now(), 1),
  7.         ('Los pilares de la tierra', now(), 1),
  8.         ('Divergente', now(), 0);

Código PHP:
<?php
    $mysqlHost 
'localhost';
    
$mysqlDB 'dbName';
    
$mysqlUser 'userName';
    
$mysqlPassword 'userPassword';

    
$cn = new PDO('mysql:host='.$mysqlHost.';dbname='.$mysqlDB$mysqlUser$mysqlPassword);
    
$qry 'select id_post, titulo, fecha, leido from post order by id_post desc';
    
$result $cn->prepare($qry);
    
$result->execute();
    
$xc  '';
    
$xc .= '<table border="1" cellspacing="3" cellpadding="3" style="border-collapse:collapse;">';
        
$xc .= '<thead><tr>';
            for (
$i 0$i $result->columnCount(); $i++) 
            {
                
$aux $result->getColumnMeta($i);
                
$xc .= '<td>'.$aux['name'].'</td>';                
            }
        
$xc .= '</tr></thead>';
        
$xc .= '<tbody>';
            while(
$row $result->fetch(PDO::FETCH_NUM))
            {
                
$xc .= '<tr>';
                for (
$i 0$i $result->columnCount(); $i++) $xc .= '<td>'.trim($row[$i]).'</td>';
                
$xc .= '</tr>';
            }
        
$xc .= '</tbody>';
    
$xc .= '</table>';
    echo 
$xc;
?>
Saludos,

Etiquetas: mysql
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 02:15.