Buenas,
Cómo puedo hacer un random en php que coja 3 resultados aleatorios de una base de datos y que no se repitan entre si¿? La consulta quiero que sea SQL en PHP.
Lo puedes hacer directamente desde el SQL:
SELECT DISTINCT id FROM table ORDER BY RAND() LIMIT 3
Saludos!
Cita de: WarGhost en 19 Octubre 2012, 20:26 PM
Lo puedes hacer directamente desde el SQL:
SELECT DISTINCT id FROM table ORDER BY RAND() LIMIT 3
Saludos!
Lo probaré!
Cita de: WarGhost en 19 Octubre 2012, 20:26 PM
Lo puedes hacer directamente desde el SQL:
SELECT DISTINCT id FROM table ORDER BY RAND() LIMIT 3
Saludos!
Y para hacerlo en tres variables que cada una muestre un resultado?
Por favor, alguien sabe como poner los resultados cada uno en una variable individual?
¿Cual es la base de datos que utilizas?
$db = mysqli($dbHost, $dbUser, $dbPassword, $dbName);
$result = $db->query('SELECT DISTINCT id FROM tabla ORDER BY RAND() LIMIT 3');
if(is_object($result)) {
$var = $result->fetch_all(MYSQLI_ASSOC);
$result->free();
}
echo 'Variable 1: ' . $var[0]['id'] . '<br/>'
. 'Variable 2: ' . $var[1]['id'] . '<br/>'
. 'Variable 3: ' . $var[2]['id'] . '<br/>';
Si las quieres imprimir a la vez, es mejor que utilices un while.
P.D:Muevo el hilo a el foro: PHP.
Cita de: WarGhost en 20 Octubre 2012, 17:11 PM
$db = mysqli($dbHost, $dbUser, $dbPassword, $dbName);
$result = $db->query('SELECT DISTINCT id FROM tabla ORDER BY RAND() LIMIT 3');
if(is_object($result)) {
$var = $result->fetch_all(MYSQLI_ASSOC);
$result->free();
}
echo 'Variable 1: ' . $var[0]['id'] . '<br/>'
. 'Variable 2: ' . $var[1]['id'] . '<br/>'
. 'Variable 3: ' . $var[2]['id'] . '<br/>';
Si las quieres imprimir a la vez, es mejor que utilices un while.
P.D:Muevo el hilo a el foro: PHP.
y puedo poner?
variable1 = $var[0]['id'];
Si, pero es hacer dos variables con el mismo contenido.