note 52093 deleted from faq.databases by betz
| From: | betz@php.net | Date: | Thu, 21 Apr 2005 10:45:55 +0000 |
| Subject: | note 52093 deleted from faq.databases by betz | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-88320@lists.php.net to get a copy of this message | ||
Note Submitter: info at pvims dot com
Reason: useless
----
favor si me dan alguna luz sobre esto les agradezco mucho:
el problema es como valido las entradas autorizas con las visitas que ha tenido.
En si el caso es : a un cliente le venden 10 entradas al mes de un diario por la web luego la
validación es:
1. Que el cliente entre con usurario y Password (esto funciona correcto)
2. Que si ese cliente gasto sus 10 entradas ya el sistema no lo debe dejar entrar. (esto es lo que
no he podido validar)
De echo el codigo funciona perfecto de esta manera:
<?
//conecto con la base de datos
$conn = mysql_connect("localhost","usuario","password");
//selecciono la BD
mysql_select_db("nom_BD",$conn);
//Sentencia SQL para buscar un usuario con esos datos
$ssql="SELECT * FROM usernotivias WHERE usuario='$usuario' and
password='$contrasena'";
//Ejecuto la sentencia
$rs = mysql_query($ssql,$conn);
//estas variables son para probar si hace la comparacion despues de logearse
$a =10; // entradas_autorizadas
$b =20; // numero_visitas
//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña
if (mysql_num_rows($rs)!=0){
//si se logea correctamente
session_start();
session_register("autentificado");
$autentificado = "SI";
mysql_query("UPDATE usernotivias SET
//esto lo uso para sumar 1 visita mas al usuario que entra
numero_visitas=numero_visitas+1
WHERE usuario='$usuario' and password='$contrasena'");
//aqui toma las variables que puse arriba y las compara correctamente, en este caso no me deja
entrar si yo cambio los balores si me deja entrar , si escribo algo herrado
me dice que no estoy registrado osea todo muy bien pero....
como hago para que $a=10 y $b=20 tomen los valores correspondientes a la base de
datos?
//luego: si numero de visitas > entradas_autorizadas
if($b > $a ){
//no entra
header("Location: noacceso.html?errorusuario=si");
}else {
//si entra
header ("Location: notivias.html");
}
}else {
// no existe ese usuario registrado
header("Location: novalido.html?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);
?>
Extructura de la base de datos
usuario
password
entradas_autorizadas
numero_visitas