Podrian chequiar un codigo por favor?

Iniciado por mark182, 18 Noviembre 2009, 21:27 PM

0 Miembros y 1 Visitante están viendo este tema.

mark182

Buenos dias:

Bueno primero los hambiente y despues les digo que es lo que quiero hacer jej:

Estoy programa una pagina para un profesor de historia, donde tiene una sección que es para ver el dictado de la clase. El profesor tiene varios colegios y varios cursos, por lo tanto, segun colegio y curso, tiene que entrar a una sección distinta.
Entonces lo que quiero hacer es, cuando el usuario, ya loguiado, ingrese a esta sección que se analice de que colegio es e enviarlo a la pagina que le corresponda, me explico?

La base de datos tiene dos tablas con el siguiente contenido:


+---------------------+
|         Tabla           |
+---------------------+
| alumnos               |
| usuarios               |
+---------------------+

alumnos:

+-----------+
| id_alum   |
| nombre   |
| apellido   |
| sexo       |
| colegio    |
| mail        |
| tel          |
| cel         |
+----------+

usuarios:

+-----------+
| id_us       |
| usuario    |
| password |
+-----------+


Entonces lo que pense es que, teniendo el usuario, hacer una consulta a ver que id le corresponde a este usuario, buscar ese id en id_alum y mostrar el colegio que le pertenece a ese id_alum (alumno). El codigo seria el siguiente.

$colegio = mysql_query("SELECT colegio
FROM alumnos
INNER JOIN usuarios ON id_alum = id_us
WHERE usuario='$_SESSION[usuario]'");

echo $colegio;


NOTA: descarten la parte de conectar a la base de datos y la seleccion y la variable $_SESSION[usuario] contiene el usuario.

El problema es que no me muestra esta mostrando nada. Al principio crei que era un problema de mysql...pero no. Los chicos del foro de mysql me demostraron que no era un problema de mysql, haci que por eso estoy preguntando aca.

Espero que me puedan ayudar. Si necesitan mas informacion, diganme.

Hasta luego y gracias.

:ohk<any>

Una simple sugerencia en la variable de session.
Create otra variable y asignale el valor de la variable de sesion, prueba tu variable imprimiendo en pantalla con un "echo" en caso no haya ningun valor, es porque la variable de session no tiene nada, y por lo tanto no hay dato para tu consulta, ahora en tu sesion deberias recibirla asi:

$_SESSION['usuario'] --> usando comilla simple, creo que afecta un poco  :xD
Y no ejecutar la consulta directamente desde la variable de sesion (repito nuevamente), mejor desde otra variable creada y asignada con dicha sesion  :P :P :P me canse de escribir  :xD :xD

saludos
Y es que a veces pienso que si no estuviera loco no podría salir adelante.
Lo que no se es capaz de dar, en realidad no se posee, uno es poseído por ello.

mark182

Bien... probé lo que me dijiste OHK:


$usuario =  $_SESSION['usuario'];

$colegio = mysql_query("SELECT colegio
        FROM alumnos
        INNER JOIN usuarios ON id_alum = id_us
        WHERE usuario='$usuario'");

echo $colegio;


Probé la variable $usuario y es correcta, osea la variable de session no esta vacía, pero al imprimir la variable $colegio me muestra lo siguiente: Resource id #4. Que es lo que significa? y que esta pasando?

Gracias.-

Kasi

Hola, a ver si puedo ayudarte con el problema.

Cuando haces un mysql_query, te devuelve un recurso, es decir, similar a un recordset con todos los resultados obtenidos, para sacar lo que buscas tienes que procesarlo usando $registro = mysql_fetch_array($colegio)
Con eso obtendrias la primera fila de todos los resultados y ya podrias usarla siendo algo similar a: echo $registro['colegio']

Para recorrer todos los registros puedes usar un bucle del tipo

while($registro = mysql_fetch_array($colegio))
{
instrucciones que necesites
...
...
}


Con eso deberias poder ver los datos que obtienes de la SQL.

Un saludo


Castg!

gracias de mi parte tambien porq tenia le mismo problema de resource id4# unsa ludo