Hola a to2.
Integré el ajax chat a mi sitio, pero los usuarios los maneja en un archivo users.php
<?php
// List containing the registered chat users:
$users = array();
// Default guest user (don't delete this one):
$users[0] = array();
$users[0]['userRole'] = AJAX_CHAT_GUEST;
$users[0]['userName'] = null;
$users[0]['password'] = null;
$users[0]['channels'] = array(0);
// Sample admin user:
$users[1] = array();
$users[1]['userRole'] = AJAX_CHAT_ADMIN;
$users[1]['userName'] = 'admin';
$users[1]['password'] = 'admin';
$users[1]['channels'] = array(0,1);
// Sample moderator user:
$users[2] = array();
$users[2]['userRole'] = AJAX_CHAT_MODERATOR;
$users[2]['userName'] = 'moderator';
$users[2]['password'] = 'moderator';
$users[2]['channels'] = array(0,1);
// Sample registered user:
$users[3] = array();
$users[3]['userRole'] = AJAX_CHAT_USER;
$users[3]['userName'] = 'user';
$users[3]['password'] = 'user';
$users[3]['channels'] = array(0,1);
?>
Necesito llenar ese array de una tabla usuarios desde la base de datos, porque manejo miles de usuarios, y declararlos todos en el archivo users.php me parece tedioso y poco dinamico.
Tabla Usuarios:
--------------------------
id_usuario user_Role UserName Password Channels
Alguien que me pueda echar un cable?
Buenas, a ver si podemos ayudarte.
Para empezar, hariamos lo siguiente:
$query = 'SELECT id_usuario user_Role UserName Password Channels FROM Usuarios';
$result = mysql_query($query);
Con esto ya tenemos en un recurso de mysql todos los users, ahora toca cargarlos al array del siguiente modo:
$users = array();
$i = 0;
while($registro = mysql_fetch_array($result)){
$users[$i] = array();
$users[$i]['userRole'] = $registro['user_Role'];
$users[$i]['userName'] = $registro['userName'];
$users[$i]['password'] = $registro['Password'];
$users[$i]['channels'] = $registro['Channels'];
//Este ultimo sobre channels no se muy bien como procesartelo, asi que esa parte la dejo abierta a duda para otros :P
$i++ ;
}
Con esto tendriamos el array $users lleno con todos los usuarios de la tabla.
Hay maneras mejores para hacer lo que pides, pero esta es la mas sencilla que veo ahora mismo :P
Espero haber sido de algo de ayuda, un saludo.
Gracias Kasi, efectivamente llena el array desde la consulta, excepto el channels que me marca un error.
Trataré de solucionarlo. Gracias y esperando comentarios y/o tips. ;D
Puedes poner aqui el error que te lanza a ver si conseguimos solucionarlo.
Un saludo
Hola, usando el siguiente codigo:
<?php
$conexion=mysql_connect("localhost", 'xxxx', 'xxxx');
mysql_select_db("xxxx",$conexion);
$query = 'SELECT id_usuario,user_Role,userName,Password,Channels FROM Usuarios';
$result = mysql_query($query);
$users = array();
$i = 0;
while($registro = mysql_fetch_array($result)){
$users[$i] = array();
$users[$i]['userRole'] = $registro['user_Role'];
$users[$i]['userName'] = $registro['userName'];
$users[$i]['password'] = $registro['Password'];
$users[$i]['channels'] = $registro['Channels'];
$i++ ;
}
//echo 'INFO'.$users[0]['Channels'];
?>
Me muestra el siguiente error
(http://www.imagecheese.com/images/error.png)
Esto no permite que el login se cargue :-X