Foros del Web » Programando para Internet » PHP »

acerca de este php (ayuda)...

Estas en el tema de acerca de este php (ayuda)... en el foro de PHP en Foros del Web. tengo esta consulta par autentificar usuarios a mi base de datos mysql: (control.php) <? $conn = mysql_connect("localhost","root",""); mysql_select_db("news",$conn); $usu = $_POST["usuario"]; $clave = $_POST["contrasena"]; $ssql ...
  #1 (permalink)  
Antiguo 23/09/2004, 10:23
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 13 años, 3 meses
Puntos: 0
acerca de este php (ayuda)...

tengo esta consulta par autentificar usuarios a mi base de datos mysql:
(control.php)
<?
$conn = mysql_connect("localhost","root","");
mysql_select_db("news",$conn);

$usu = $_POST["usuario"];
$clave = $_POST["contrasena"];
$ssql = "SELECT * FROM usuario WHERE id='$clave' and usu='$usu'";

$rs = mysql_query($ssql,$conn);

if (mysql_num_rows($rs)!=0){
session_start();
session_register("autentificado");
$mhngb = "SI";
header ("Location: insertar.php");
}else {
header("Location: index.php");
}
mysql_free_result($rs);
mysql_close($conn);
?>

usuario y contrasena son los campos donde ingreso los datos en el formulario (acceso.htm) que llama a control.php que es el codigo de arriba, la pregunta es:
¿ esta bien hecha esta consulta (logicamente) porque al ejecutarla el formulario no hace nada, (no va a ninguna pagina) ni mensaje de error ni nada, solo limpia los campos...y no se porque? tu sabes?

el codigo de acceso.htm es:

<form action="control.php" method="POST">
<table align="center" width="225" cellspacing="2" cellpadding="2" border="0">
<tr>
<td colspan="2" align="center" >
</td>
</tr>
<tr>
<td align="right">Usuario:</td>
<td><input type="Text" name="usuario" size="8" maxlength="50"></td>
</tr>
<tr>
<td align="right">Clave:</td>
<td><input type="password" name="contrasena" size="8" maxlength="50"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="Submit" value="Entrar"></td>
</tr>
</table>
</form>
__________________
"How do you define Real?"

Última edición por ccca001; 23/09/2004 a las 10:48
  #2 (permalink)  
Antiguo 23/09/2004, 11:56
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Deberías usar los arrays superglobales (si usas PHP 4.1.0 en adelante):

Código PHP:
<? 
$conn 
mysql_connect("localhost","root",""); 
mysql_select_db("news",$conn); 

$usu $_POST["usuario"];
$clave $_POST["contrasena"]; 
$ssql "SELECT * FROM usuario WHERE id='$clave' and usu='$usu'"

$rs mysql_query($ssql,$conn); 

if (
mysql_num_rows($rs)!=0){ 
session_start(); 
$_SESSION['autentificado']="SI";
header ("Location: insertar.php"); 
exit;
}else { 
header("Location: index.php"); 
exit;


?>
Por lo demás en insertar.php y en index.php .. o en general en toda página que redirecciones tendrás que validar esa variable de sesión que has creado "Autentificado" (por lo menos que exista .. el valor es lo de menos, es más .. podrías usar en lugar de esa variable como un "flag" (bandera) algo más "productivo" como el nombre de tu usuario o su ID como para usarlo posteriormente en tu aplicación a nivel de autorizaciones o control de registros en general).

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:25.