while repetitivos numeros mostrar los lazo infinito incrementar for ejemplo comando ciclos php mysql database mysqli

repetitivos - php comando for



Problema de ciclo infinito de PHP (1)

Cada vez que llamas while($row = mysqli_fetch_array($MySQL->getReports(''jackginger''))) estás haciendo una nueva consulta, por lo que está buscando la misma cosa una y otra vez.

una solución podría ser:

<?php include ''/functions/MySQL.php''; $MySQL = new MySQL; $con = mysqli_connect("host","user","password","db"); $result = mysqli_query($con,"SELECT * FROM reportLogger WHERE Moderator=''jackginger''"); $store = $MySQL->getReports(''jackginger''); while($row = mysqli_fetch_array($store)) { $time = $row[''Time'']; $moderator = $row[''Moderator'']; $reason = $row[''Reason'']; // Now for each looped row echo "<tr><td>".$time."</td><td>".$moderator."</td><td>".$reason."</td></tr>"; } ?>

Puedo obtener el código correcto para trabajar, pero quiero poder usar objetos y métodos, lo que no funciona. La misma entrada en la base de datos se repite hasta que la consulta falla. Vi a otras personas que tenían consultas dentro del enunciado while, pero pensé que el método que estoy utilizando solo debería consultar el enunciado una vez, pero probablemente sea incorrecto. Gracias.

<?php include ''/functions/MySQL.php''; $MySQL = new MySQL; $con = mysqli_connect("host","user","password","db"); $result = mysqli_query($con,"SELECT * FROM reportLogger WHERE Moderator=''jackginger''"); while($row = mysqli_fetch_array($MySQL->getReports(''jackginger''))) { $time = $row[''Time'']; $moderator = $row[''Moderator'']; $reason = $row[''Reason'']; // Now for each looped row echo "<tr><td>".$time."</td><td>".$moderator."</td><td>".$reason."</td></tr>"; } ?>

Clase separada

public function __construct(){ $this->con = mysqli_connect("localhost","root","pass","Minecraft"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } } public function getUUID($username) { $result = mysqli_query($this->con,"SELECT UUID FROM loginLogger WHERE Username=''" . $username . "''"); return mysqli_fetch_array($result)[0]; } public function getReports($username) { $result = mysqli_query($this->con,"SELECT * FROM reportLogger WHERE UUID=''" . $this->getUUID($username) . "''"); return $result; }