Ver datos según usuario en PHP y MySQL

No sé mucho de PHP, estoy aprendiendo. En el trabajo intento desarrollar un sitio web desde donde el usuario tendrá acceso a insertar, modificar y consultar cierta información. Lo del registro e identificación de usuarios me funciona, pero resulta que necesito hacer que, según el usuario se vean sus datos y los pueda modificar.
Te cuento más o menos como está la base de datos:
Tablas:
Representante
Establecimientos
consumo_agua
Vehículos
Y otras 12 tablas más...
La tabla representante tiene un campo llave (o indice, o clave): cedula
Las otras tablas tienen el campo cedula para relacionarlas.
La tabla representante es donde están los usuarios con su password y otros datos más
Puedo hacer que verifique el usuario y que tenga acceso a ciertas páginas según el tipo de usuario y que se vea la información de ese usuario de la tabla representante.
Lo que no consigo es que, según la cedula del usuario, se vean en la página sólo los datos de ese usuario, ya sea sólo para verlos o para modificarlos.
Por ejemplo, en la tabla establecimientos hay una empresa relacionada con un usuario (pueden haber más), y al hacer la consulta me aparece el primer registro, no el correspondiente con el usuario de acuerdo a la cedula.
Otra cosa, las páginas las estoy haciendo con dreamweaver por las plantillas y por los
Asistentes que trae (es que soy principiante!).
Para ver los datos del usuario tengo esto:
$conn = mysql_connect("localhost","root","xxx") or die ("Error de conexion.");
mysql_select_db("retc",$conn) or die ("Error de conexion.");
$ssql = "SELECT * FROM representante WHERE cedula='".$_SESSION["usuario"]."'";
$rs = mysql_query($ssql,$conn);
while($row = mysql_fetch_array($rs)) {
echo "VERIFICACION DATOS DE DECLARANTE <br>";
echo "Nombre:"." ".$row["nombre"]."<br>";
echo "Tipo de usuario:"." ".$row["tipo"]."<br>";
echo "Dirección:"." ".$row["direccion"]."<br>";
echo "Cédula:"." ".$row["cedula"]."<br>";
echo "Email:"." ".$row["email"]."<br>";
}
echo "Datos adicionales del declarante: <br>";
Hasta ahí todo bien, pero no sé que hacer para que, según el usuario $_SESSION["usuario"], me traiga los datos de las otras tablas. En "usuario" está la cedula del usuario, que es la llave.
No sé si te quedó claro! Espero me puedas ayudar con un pequeño ejemplo en código.

1 Respuesta

Respuesta
1
Has probado a imprimir $ssql (echo $ssql;) justo debajo de asignar la consulta y con la consulta que se genera, ¿ejecutarla en PHPMyAdmin o el software de gestión de BBDD que uses?
Tu SELECT tiene buena pinta, pero debes comprobar que:
* En la tabla representante los datos son correctos
* La consulta que estás lanzando a la BBDD es correcta
Gracias por la respuesta ditman.
Pues bueno, fíjate que la consulta la asigno a $rs y luego imprimo los datos
Echo "Nombre:"." ". $row["nombre"]. "<br>"; y me funciona. Lo que no logro es que, con el valor de $_SESSION["usuario"], me lea los datos relacionados en otras tablas. Ya tengo en las otras tablas el campo correspondiente y los relaciones con phpMyAdmin, pero aún así no lee nada.
Gracias, espero.
Entonces el problema está en el valor que almacenas en $_SESSION['usuario'].
Aunque no pones el código completo creo que el problema que estás teniendo es que no estás inicializando la session, antes de usarla.
Para poder acceder a $_SESSION, al principio del PHP en la que la vayas a usar tienes que llamar a session_start()
Más ejemplos básicos de sesiones en PHP.net

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas