AYUDA CON NIVELES LOGIN/PASSWORD Y INNER jOIN GRACIAS

Cuestiones y dudas acerca de lenguajes de programación diversos.

Moderador: Moderadores

Avatar de Usuario
escopulus

AYUDA CON NIVELES LOGIN/PASSWORD Y INNER jOIN GRACIAS

Mensaje por escopulus » Mar Ene 21, 2014 2:12 am

Hola muchas gracias por leer este mensaje ... tengo dos problemas.. el primero es que arme cachos de codigos por aqui por alla, y conseguí hacer un login y password con niveles. pero no me re-direcciona
bien solo me redidirecciona en un lin o nivel este es mi codigo completo para ver si alguien me puede ayudar arreglarlo....
esta es mi base de Datos
/////////////////////////////////////////////////////////////////////////////////

-- Estructura de tabla para la tabla `usuario`
--

CREATE TABLE IF NOT EXISTS `usuario` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`usuario` varchar(255) NOT NULL,
`id_direccion` varchar(255) NOT NULL,

////// NO SE SI AQUI id_direccion es varchar o int//////



`pass` varchar(255) NOT NULL DEFAULT '',
`nivel` enum('Administrador','Maestro','Alumno') NOT NULL DEFAULT 'Administrador',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=10 ;



CREATE TABLE IF NOT EXISTS `plantel` (
`id_direccion` int(11) NOT NULL AUTO_INCREMENT,
`direccion` varchar(255) NOT NULL,
PRIMARY KEY (`id_direccion`),
KEY `id_direccion` (`id_direccion`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

--
-- Volcado de datos para la tabla `plantel`
--

INSERT INTO `plantel` (`id_direccion`, `direccion`) VALUES
(1, 'norte'),
(2, 'sur'),
(3, 'centro');
(4, 'suroeste');
(5, 'calle14');
(6, 'las plazas');
(7, 'etc');

-- pueden ser las direccion que sean 100,200, etc---






--
-- Volcado de datos para la tabla `usuario`
--

INSERT INTO `usuario` (`id`, `usuario`, `pass`, `plantel` , `nivel`) VALUES
(8, 'juan', '1234345', 'sur', 'Administrador'),
(9, 'eduardo', '1231245', 'norte', 'Maestro');
(10, 'omar', '1234566', 'centro', 'Alumno');
(11, 'eduardo2', '12342325', 'suroeste', 'Maestro');
(12, 'eduardo5', '12345986', 'calle14', 'alumno');




//////////////////////////////////////////termina base de datos///////////////////////////////


Este es mi form para el usuario


//////////////////////////////////////////////////// resgistro_usuario.php////////////////////////////////////


<form id="form1" name="form1" method="post" action="alta_usuario.php">
<p>Nombre de Usuario:
<input type="text" name="usuario" id="usuario" />
</p>
<p>Contraseña:
<input type="password" name="pass" id="pass" />
</p>

<p>Tipo de Usuario :<select name='nivel'>
<option value='Administrador'>Administrador</option>
<option value='Maestro'>Maestro</option>
<option value='Alumno'>Alumno</option>
</select></p>
<p>

<?php

DEFINE ('DB_USER', '******');
DEFINE ('DB_PASSWORD', '******');
DEFINE ('DB_HOST', 'localhost');
DEFINE ('DB_NAME', 'plantel');
$dbc = @mysqli_connect (DB_HOST, DB_USER, DB_PASSWORD, DB_NAME) OR die ('Could not connect to MySQL: ' . mysqli_connect_error() );
mysqli_set_charset($dbc, 'utf8');
$q = "SELECT * FROM plantel";
$r = mysqli_query($dbc,$q);

if($r)
{
echo "<select name=\"plantel\">\n";
while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC))
{
echo "<option value=\"{$row['id_direccion']}\">{$row['direccion']}</option>\n";
}
}

?>


<input type="submit" name="button" id="button" value="Enviar" />
</p>
</form>


////////////////////////////////////////////fin de resgistro_usuario.php ///////////////////////////////////


Este es alta_usuario.php

///////////////////////////////////////////////////inicio de alta_usuario.php //////////////////


<?php
$username = "*****";
$password = "*****";
$hostname = "localhost";
$usuario = $_POST['usuario'];
$pass = $_POST['pass'];
$nivel = $_POST['nivel'];


$con = mysql_connect($hostname, $username, $password)
or die("No me puedo Conectar a la base de MySQL");
mysql_select_db("progresa_prueba", $con);
if(isset($_POST['button'])) {
$forquery = "INSERT INTO usuario(usuario, pass, nivel)
VALUES('$usuario','$pass', '$nivel')";
// Acciones
if(mysql_query($forquery)){

echo "<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>";
echo "<table width='800' align='center' bgcolor='#ccc'>";
echo "<tr>";
echo"<td align='center'>Sus Datos Fueron Correctamente Insertados</td>";
echo"<td>&nbsp;</td>";
echo "</tr>";
echo "<tr>";
echo"<td align='center'><a target='_blank'<a href=index2.php>Ver Administracion</a></td>";
echo"<td>&nbsp;</td>";
echo "<tr>";
echo " </table>";
}
else
echo 'Error al guardar sus Datos Favor de Intentar de Nuevo!!!!';
mysql_close($con); }
?>

/////////////////////////////////////////////////fin de inicio de alta_usuario.php////////////////////


y este es el login

//////////////////////////inicio de login.php///////////////////////////////////////////////////////////////

<form id="login" name="form1" method="POST" action="cargar_login.php">
<p>Nombre de Usuario:
<input type="text" name="usuario" id="usuario" />
</p>
<p>Contraseña:
<input type="password" name="pass" id="pass" />
</p>
<p>
<input type="submit" name="button" id="button" value="Enviar" />
</p>
</form>

///////////////////////////////////////////////////////////////////////////fin de login/////////////////////////////////////

inicio de cargar_login.php " ESTE ES EL ARCHIVO QUR TENDRIAQUE REDIRECCIONAR A LOS NIVELES DE USUARIOS.."




///////////////////////////////////////////////////////////////////////INICIO DE carga_login.php///////////////////////////

<?php
$usuario= $_POST['usuario'];
$pass = $_POST['pass'];
$con=mysql_connect("localhost","progresa_naverus","tierno");
$bd=mysql_select_db("progresa_prueba");

$consulta=mysql_query("SELECT * FROM usuario",$con);
$row=mysql_fetch_array($consulta) or die(mysql_error());
$nivel=$row["nivel"];
$userBD=$row["usuario"];
$passBD=$row["pass"];
if(($usuario == $userBD) AND ($pass == $passBD)){
if($nivel == "Administrador"){
Header("Location: administrador.php");
}
if($nivel == "Mastro"){
Header("Location: maestro.php");
}
if($nivel == "Alumno"){
Header("Location: alumno.php");
}
}else{
Header("Location: login.php?mensaje=ERROR_DE_SESSION");
}
?>

//////////////////////////////////////////////////////////////fin de carga_login.php//////////////////////////////////

ahi tendria que llevarme dependiendo del tipo de nivel " Aministrador, Maestro, Alumno"
pero solo me lleva uno y no entiendo cual es el error..



y la segunda tengo otra tabla. sql .... que se llama fotos



--
-- Estructura de tabla para la tabla `fotos`
--

CREATE TABLE IF NOT EXISTS `fotos` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`imageurl` varchar(255) DEFAULT NULL,
`nombre` varchar(50) DEFAULT NULL,
`paterno` varchar(75) DEFAULT NULL,
`materno` varchar(75) DEFAULT NULL,
`progaca` text,
`revoe` text,
`matricula` varchar(75) DEFAULT NULL,
`vigencia` varchar(10) DEFAULT NULL,
`direccion` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ;


/////////////////////////////////////// fin de sql fotos ///////////////////////////////////////////////

como hago para traer todos los para traer todos esos datos correspondiente al usuario que entro ejemplo a la pagina maestro.php con el nombre de usuario ----y que vengan todos de un solo plantel lo que yo llego entender seria con inner Join

SELECT * FROM usuario INNER JOIN plantel ON usuario.id_plantel = plantel.id_direccion WHERE usuario.User = 'usuario' AND usuario.Pass = 'pass'


pero como hago el codigo en php para que traiga todos los datos de la fotos unido con el nombre del usuario en el nivel 2 ( maestro ) maestro.php Muchas gracias de verdad por su ayuda... de verdad gracias