mysqli_fetch_array mysqli_assoc ejemplos ejemplo assoc array all php mysql arrays mysqli

php - mysqli_assoc - $ resulta solo una fila y luego se convierte en sesión



mysqli_assoc php (2)

Estoy tratando de consultar una sola fila de una tabla ''cuenta''. Tengo un problema con el MYSQLI, así que necesito un consejo. ¿Cómo puedo hacer eso?

$link = mysqli_connect("localhost","root","","database") or die("Error " . mysqli_error($link)); $query = "SELECT * FROM account WHERE username=''".$user."'' AND password=''".$passcode."'' LIMIT 1"; $result = $link->query($query) or die("Error " . mysqli_error($link)); $numrow = $result->num_rows; $res = $result->fetch_assoc();

Después de la consulta quiero copiar los datos a una sesión, estoy haciendo así:

session_start(); $tableau = array($res[''cod_acc''],$res[''username''],$res[''password'']); $_SESSION[''tableau''] = $tableau;

Y después de estos, ¿cómo puedo imprimir los datos?

$tableau = $_SESSION[''tableau'']; echo "$tableau[''username'']";


El problema estaba en algún otro código de línea, lo siento por la publicación. Pero gracias chicos.


De tu pregunta:

¿Cómo puedo imprimir los datos?

Antes que nada, necesitas agregar error_reporting() en tu código:

error_reporting(E_ALL);

Está guardando valores en una matriz para $_SESSION :

$tableau = array($res[''cod_acc''],$res[''username''],$res[''password'']); $_SESSION[''tableau''] = $tableau;

Si observa su matriz de sesión, no es una matriz asociativa .

Entonces no puedes obtener el resultado como:

$tableau = $_SESSION[''tableau'']; echo $tableau[''username''];

Solución:

Puede obtener el nombre de usuario de la matriz de sesiones como:

echo $tableau[1]; // username on second index.

Solución 2:

Si desea un índice asociativo, debe usar una matriz asociativa como:

$tableau = array( "cod_acc"=>$res[''cod_acc''], "username"=>$res[''username'']); $_SESSION[''tableau''] = $tableau;

Ahora puedes usarlo como lo necesites. Tenga en cuenta que estoy eliminando el campo de contraseña de la sesión, creo que no es necesario.

Nota al margen:

No sé por qué se mezclan el estilo procedimental y el estilo orientado a la objeción.