Foros DeCeMuLaDoReS

Retroceder   Foros DeCeMuLaDoReS > PC > Programación

Programación Escribe aquí todo lo relacionado sobre programación, ya sea C, C++, PHP, etc, etc...

Respuesta
 
LinkBack Herramientas
  #1 (permalink)  
Antiguo 06-Mar-2008, 10:06
Willie no se puede cailificar en este momento
DC Junior
 
Fecha de Ingreso: 06-March-2008
Mensajes: 3
Posts agradecidos: 1
Agradecido 0 veces en 0 posts
Icon5 [Ayuda]Limitar acciones en PHP

Hola, veran no soy muy bueno en esto del php , nesecito saber como hacer para que un usuario, por ejemplo descarge algo y que solo pueda volver a hacerlo despues de 12h gracias de antemano
Responder Citando
  #2 (permalink)  
Antiguo 06-Mar-2008, 12:59
Avatar de DEC
DEC DEC no ha iniciado sesión
DEC es un nombre conocido por todos DEC es un nombre conocido por todos DEC es un nombre conocido por todos DEC es un nombre conocido por todos DEC es un nombre conocido por todos DEC es un nombre conocido por todos
Webmaster

Medalla de administrador 

 
Fecha de Ingreso: 14-January-2007
Ubicación: España
Mensajes: 230
Posts agradecidos: 20
Agradecido 363 veces en 61 posts
Predeterminado Re: [Ayuda]Limitar acciones en PHP

Eso normalmente se hace mediante una cookie que tenga por duración 12h. Pero al estar guardadas éstas en el ordenador del usuario, simplemente con borrarlas podría descargar de nuevo. Así que puedes limitarlo por usuario mediante un nuevo campo en la base de datos que se actualice con un valor booleano (1 ó 0) pasadas 12h. O simplemente guardando la hora en la BD y realizando una resta entre el valor guardado y el actual. Si éste supera las 12h, podrá descargar. De lo contrario, tendrá que esperar.

Código PHP:
<?php
//Limitación mediante cookie
if (isset($_POST['descarga'])) {
   
setcookie("descarga"$_COOKIE['usuario'], time()+60*60*12); //12h de cookie
}
if (isset(
$_COOKIE['descarga'])) die('No puedes descargar');
?>
Código PHP:
<?php
//Obtenemos la hora de la última descarga en formato time();
$tiempo_descarga mysql_result(mysql_query("SELECT descarga FROM usuarios WHERE usuario = '" $_COOKIE['usuario'] . "'"),0,0);
 
$tiempo_actual time();
 
//Tenemos las horas en segundos, así que: 60 * 60 * 12 = 43200 segundos = 12h
if ($tiempo_actual $tiempo_descarga >= 43200) {
   
//Se cumple la condición, por lo que podemos descargar
} else {
   
//No se puede descargar, ya que el tiempo es menor
}
?>
Espero que lo hayas entendido.

Saludos.
Responder Citando
Los siguientes usuarios agradecieron a DEC este mensaje:
Willie (06-Mar-2008)
  #3 (permalink)  
Antiguo 06-Mar-2008, 18:41
Willie no se puede cailificar en este momento
DC Junior
 
Fecha de Ingreso: 06-March-2008
Mensajes: 3
Posts agradecidos: 1
Agradecido 0 veces en 0 posts
Predeterminado Re: [Ayuda]Limitar acciones en PHP

Si lo entendi gracias DEC pueden cerrar
Responder Citando
Respuesta


(0 miembros y 1 visitantes)
 
Herramientas

Normas de Publicación
No puedes crear nuevos temas
No puedes responder mensajes
No puedes subir archivos adjuntos
No puedes editar tus mensajes

Los Códigos BB están Activado
Las Caritas están Activado
[IMG] está Activado
El Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Activado

Ir al Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
[Ayuda] Quiero aprender a Programar PHP desde casi 0 alfre Programación 6 01-Jan-2008 02:22


Torneo DC 2012
Torneo DC 2012

La franja horaria es GMT +1. Ahora son las 21:41.


Desarrollado por: vBulletin® Versión 3.8.2
Derechos de Autor ©2000 - 2012, Jelsoft Enterprises Ltd.
Traducido por mcloud de vBhispano.com
 

Content Relevant URLs by vBSEO 3.2.0