Cita:
Iniciado por NSD pues te recomiendo que leas algun manual un poco compañero, lo que pides no es complicado, te dejo el codigo pero intenta razonarlo asi aprendes y mejoras
Código PHP:
Ver original<?php
Function ValidoSQL($String){
$Estado = False;
} Else {
$Estado = True;
}
Return ($Estado);
}
If(!ValidoSQL
(trim($_POST['usuario'])) Or
!ValidoSQL
(trim($_POST['password']))){ $Estado = 'Error de inyeccion sql!';
} Else {
If(($_POST['usuario'] == '') Or ($_POST['password'] == '')){
$Estado = 'Datos invalidos, completa los campos!';
} Else {
$Estado = 'Datos OK.';
}
}
?>
Saludos!
Entiendo perfectamente, pero el problema lo tengo cuando lo quiero aplicar a lo que ya tengo, entendes?
Lo que tengo yo es lo siguiente...
Código PHP:
<?php
session_start();
//datos para establecer la conexion con la base de mysql.
mysql_connect('localhost','xx','xx')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('xx')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
if(trim($_POST["usuario"]) != "" && trim($_POST["password"]) != "")
{
//Necesito que verifique que no hayan caracteres extraños, y que me de el error de Intento de Inyección SQL.
$usuario = $_POST["usuario"];
$password = $_POST["password"];
$result = mysql_query('SELECT password, usuario FROM usuarios WHERE usuario=\''.$usuario.'\'');
if($row = mysql_fetch_array($result)){
if($row["password"] == $password){
$_SESSION["k_username"] = $row['usuario'];
echo 'Has sido logueado correctamente '.$_SESSION['k_username'].' <p>';
echo '<a href="index.php">Index</a></p>';
echo'<script>alert("El usuario o contraseña son erroneos.");</script>';
echo'<SCRIPT LANGUAGE="javascript">
location.href = "one.html";
</SCRIPT>';
}
}else{
echo'<script>alert("El usuario o contraseña son erroneos.");</script>';
echo'<SCRIPT LANGUAGE="javascript">
location.href = "one.html";
</SCRIPT>';
}
mysql_free_result($result);
}else{
echo'<script>alert("Debe especificar un usuario y password.");</script>';
echo'<SCRIPT LANGUAGE="javascript">
location.href = "one.html";
</SCRIPT>';
}
mysql_close();
?>
El que me dice que tengo campos sin rellenar lo tengo hechom lo que me faltan es agregar el del error SQl.