Hola alexvb yo utilizaba antes esta funcion que encontre por algun lado y fui añadiendole cosas que necesitaba, no es 100% segura por que nada lo es pero evita por lo menos SQL Injection por ejemplo, ademas que te ayudara aprender lo básico
Saludos y espero que te valga, aunque es recomendable que hagas lo que te ha comunicado hades87
Código HTML:
<form method="post" action="index.php" id="alta_usuario">
<p>
<label>Usuario:</label>
<input type="text" class="textbox_log" name="usuario" id="usuario"/>
</p>
<p>
<label>Contraseña:</label>
<input type="password" class="textbox_log" name="password" id="password"/>
</p>
<p>
<input type="image" class="bEnviar" src="bEnviar.gif"/>
</p>
</form>
Código PHP:
<?php
// Iniciamos sesión.
session_start();
function verificarUsuario()
{
// Modificamos las variables pasadas por URL
foreach( $_GET as $variable => $valor )
$_GET [ $variable ] = str_replace ( "'" , " " , $_GET [ $variable ] );
// Modificamos las variables de formularios
foreach( $_POST as $variable => $valor )
$_POST [ $variable ] = str_replace ( "'" , " " , $_POST [ $variable ]);
if ( isset( $_POST['usuario'] ) && isset( $_POST['password'] ) )
{
// chequear si se llama directo al script.
if ($_SERVER['HTTP_REFERER'] == "")
{
// Paramos la ejecucion del script.
die ("Error cod.:1 - Acceso incorrecto!");
// Salimos del script.
exit;
}
// RECOJO LAS VARIABLES
// Quitamos caracteres extraños al valor de la variable.
$USUARIO = stripslashes( $_POST['usuario'] );
$PASSWORD = stripslashes( $_POST['password'] );
$consultaVerUsuario;
$aConsultaVerUsuario;
// Consultamos si el usuario y la contraseña son correctas.
$consultaVerUsuario = mysql_query( "SELECT * FROM iDkAdmin_usuarios
WHERE NOMBRE = '". mysql_real_escape_string($USUARIO) . "' AND PASSWORD = '". mysql_real_escape_string($PASSWORD) . "'" )
or die( "Error en la consulta." );
// Si nos devuelve 0, esque no ha encontrado a ningun usuario o la contraseña esta escrita inconrrectamente.
if ( mysql_num_rows( $consultaVerUsuario ) == 0 )
{
echo '<script language="javascript">'."\n"
.'alert(\'El usuario no existe o el password no es valido.\');'."\n"
.'</script>'."\n";
echo "<META HTTP-EQUIV='refresh' CONTENT='0; URL=index.php'>";
}
else
{
// Guardamos la consulta en un array.
$aConsultaVerUsuario = mysql_fetch_array( $consultaVerUsuario );
// Le damos nombre a la sesión.
session_name( $USUARIO );
// Le decimos al explorador que no guarde en cache nada de esta página.
session_cache_limiter( 'nocache,private' );
// Guardamos información del nivel de usuario.
$_SESSION['usuario_nivel'] = $aConsultaVerUsuario['ID_PRIVILEGIO'];
// Guardamos información del nombre de usuario.
$_SESSION['usuario_login'] = $aConsultaVerUsuario['NOMBRE'];
// Recargamos la web para entrar en modo administracion.
Header ("Location: index.php");
// Salimos del script.
exit;
}
// Liberamos la consulta.
mysql_free_result( $consultaVerUsuario );
// Borramos las variables.
unset( $USUARIO, $PASSWORD, $consultaVerUsuario, $aConsultaVerUsuario );
}
}
?>