Obtener filas sin tener que hacer múltiples consultas PHP

Estoy haciendo un sistema de comentarios donde tengo una tabla que contiene comentarios guardados.

Necesito obtener cada comentario de la tabla con una sola consulta con arrays asociativos en vez de consultar la tabla cada vez que necesito obtener el siguiente comentario.

Este es el código que tengo:

 0)
    for($i=0; $i < $numeroComents; $i++){
        //Se genera una consulta cada vez que se necesita obtener el siguiente comentario
        $resultado = mysqli_query($conexion, 'SELECT * FROM comentarios WHERE ID='.($i+1).'') or die('Error al consultar: ' . mysql_error());
        $r = mysqli_fetch_assoc($resultado);
        echo '
',$r['user']," '",$r['ID'],"'
", $r['message'],'

'; } ?>

Esctructura de la tabla

introducir la descripción de la imagen aquí

0
задан 24.10.2016, 00:25
3 ответа
<?php
$conexion = mysqli_connect('localhost','root','');
    mysqli_select_db($conexion,'ADLG');

$resultado = mysqli_query($conexion, 'SELECT * FROM comentarios') or die('Error al consultar: ' . mysql_error());
while($r = mysql_fetch_assoc($resultado)){
    echo '<div class="comentario">',$r['user']," '",$r['ID'],"'<br />", $r['message'],'<div><br />';
}

?>

С этим cГіdigo пробегают линии, полученные в Гєnica консультация, не будучи должен реализовывать вторую консультацию

1
ответ дан 24.11.2019, 12:58
  • 1
    #191; Что-то подобное циклу for-each?, и #191; как podr и # 237; чтобы осуществлять цикл for-each с этим же самым funci и # 243; n? – Asahi Sara 23.10.2016, 10:02
  • 2
    Est и # 225; s перемешивая mysql и mysqli – Black Sheep 23.10.2016, 12:42

С данными, которых ты сделал, одинокий ты faltarГ, - чтобы делать систему paginaciГіn, для комментариев, и просто с первой консультацией решенный tendrГ-эксперт твоя проблема.

0
ответ дан 24.11.2019, 12:58
  • 1
    Я думаю, что это смогло быть в и # 241; adido как комментарий и не как ответ. – Dev. Joel 22.10.2016, 22:38
// MySQLi por Procedimiento

$servername = "localhost";
$username = "root";
$password = "";
$dbname = "database_name";

// Crear Conexión
$conn = new mysqli($servername, $username, $password, $dbname);
// Revisar Conexión
if (mysqli_connect_error()) {
  echo "Error de conexión MySQL: " . mysqli_connect_error();
}

// Preguntar si existen comentarios
$sql = ("SELECT * FROM `comentarios`");
$result = mysqli_query($conn, $sql);    
if (mysqli_num_rows($result) > 0) {
  $comments = 0; // Iniciar Contador
  while($row = mysqli_fetch_assoc($result)) {
    $comments++; // cantidad de comentarios
  }
  $show_comments = TRUE;
}else {
  $show_comments = FALSE;
}   
mysqli_close($conn);


if($show_comments == FALSE){
  echo 'Esta publicación no posee comentarios';
} else { 
// Ya sabemos que tiene comentarios. $comments servirá para el paginador si lo quieres agregar dividiendo en cuantos comentarios se mostrará por página

  if(!isset($_GET['list']) || empty($_GET['list']) || preg_match('/[^0-9]/', $_GET['list'])){ 
    $url_list = (1); 
  }else{ 
    $url_list = $_GET['list']; 
  }
  $list_count = 15; // Ó cuantos quieras mostrar
  $list_to = $url_list * $list_count; 
  $list_from = $list_to - $list_count;
  if($list_from <= 0){ 
    $limit = '0'.','.$list_count;
  }else{ 
    $limit = $list_from.','.$list_count; 
  }

  $sql = ("SELECT * FROM `comentarios` LIMIT $limit ORDER `id` DESC ");
  $result = mysqli_query($conn, $sql);
  while($row = mysqli_fetch_assoc($result)) {
    echo '<div class="comentario">',$row['user']," '",$row['ID'],"'<br />", $row['message'],'<div><br />';    
  }
  mysqli_close($conn);

}
0
ответ дан 24.11.2019, 12:58

Теги

Похожие вопросы