Foros del Web » Programando para Internet » PHP »

duda con fecha de vencido

Estas en el tema de duda con fecha de vencido en el foro de PHP en Foros del Web. saludos tengo este código donde hace la función de verifica las fechas de vencimiento de las cuentas @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original //pregunta si ...
  #1 (permalink)  
Antiguo 02/06/2011, 23:08
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 7 meses
Puntos: 5
duda con fecha de vencido

saludos tengo este código donde hace la función de verifica las fechas de vencimiento de las cuentas

Código PHP:
Ver original
  1. //pregunta si la fecha esta vencida
  2.                 $fecha_v_array=explode('-',$line["addfin"]);
  3.                 $fechaa_a_array = explode('-',Date("Y-m-d"));
  4.                 if(mktime(0,0,0,$fecha_v_array[1],$fecha_v_array[2],$fecha_v_array[0]) < mktime(0,0,0,$fechaa_a_array[1],$fechaa_a_array[2],$fechaa_a_array[0])) {
  5.                     $enableline = "<div id=\"piclink\"><a href=\"controlpanel.php?action=quickdisable&uid=".$line["id"]."\"><img src=\"images/vencido.png\" title=\"".$line["name"]." Esta Vencido )\"></a></div>";
  6.                 }

pero no me se porque cuando llega el dia de la fecha de la cuenta por ejemplo

fecha de vencimiento es 06/03/11 y lo que hace es la coloca la imagen que uso para identificar que esta vencida el mismo día cuando la quiero que sea cuando finalice el
día para comenzar el 06/04/11

y otra cosa cuando la la coloque como vencida quiero que en la bd la coloque como inactiva.
  #2 (permalink)  
Antiguo 03/06/2011, 03:05
Avatar de historiasdemaria  
Fecha de Ingreso: septiembre-2010
Ubicación: www
Mensajes: 433
Antigüedad: 13 años, 6 meses
Puntos: 54
Respuesta: duda con fecha de vencido

Bien, convierte el formato de fecha a la japonesa, fue una de las primeras cosas que aprendi en programacion, asi la comparacion de fechas nunca falla! lol
  #3 (permalink)  
Antiguo 03/06/2011, 03:25
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: duda con fecha de vencido

Es sencillo :)


Primero, para lo de las fechas, que te suceda con el día siguiente.. simplemente súmale al mktime 24*60*60 y te quedará la condición algo así:
Código PHP:
 if( (mktime(0,0,0,$fecha_v_array[1],$fecha_v_array[2],$fecha_v_array[0])+(24*60*60) )< mktime(0,0,0,$fechaa_a_array[1],$fechaa_a_array[2],$fechaa_a_array[0])) { 
Así controlas que es el día siguiente a la fecha de vencimiento.

Y para lo otro... no se, o bien un script que a las 00.00 de cada dia te mire todos los que han vencido, te lo cambie en la bbdd, o aqui mismo, cuando entre en la condicion, que te lo cambie... eso ya depende de dónde, cómo y cuando se use este trozo de script ;)
  #4 (permalink)  
Antiguo 03/06/2011, 06:51
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 7 meses
Puntos: 5
Respuesta: duda con fecha de vencido

ok mira yo uso este codigo para poner la cuenta inactivo y activo
Código PHP:
Ver original
  1. <?php
  2. require("config.php");
  3. if (isset($_GET["action"]) and $_GET["action"] == "quickenable" and $_GET["uid"] <> "") {
  4.     $conn = @mysql_connect($dbhost,$dbuser,$dbpass) or die ("Error connecting to database");
  5.     mysql_select_db($dbname, $conn);
  6.     mysql_query("UPDATE adu_udb SET enabled='true', changed='".date('Y-m-d H:i')."', changedby='".$_SESSION["loginuser"]."' WHERE id='".$_GET["uid"]."'") or die ("Error editing user");
  7.     mysql_close($conn);
  8. }
  9.  
  10. if (isset($_GET["action"]) and $_GET["action"] == "quickdisable" and $_GET["uid"] <> "") {
  11.     $conn = @mysql_connect($dbhost,$dbuser,$dbpass) or die ("Error connecting to database");
  12.     mysql_select_db($dbname, $conn);
  13.     mysql_query("UPDATE adu_udb SET enabled='false', changed='".date('Y-m-d H:i')."', changedby='".$_SESSION["loginuser"]."' WHERE id='".$_GET["uid"]."'") or die ("Error editing user");
  14.     mysql_close($conn);
  15. }
  16. ?>

y este es un boton que la cambia a inactivo y activo

Código PHP:
Ver original
  1. else {
  2.                    if ($line["enabled"] == "true") {
  3.                             $enableline = "<div id=\"piclink\"><a href=\"controlpanel.php?action=quickdisable&uid=".$line["id"]."\"><img src=\"images/greendot.png\" title=\"".$line["name"]." Esta Activado (haga clic para desactivar)\"></a></div>";
  4.                     } else {
  5.                             $enableline = "<div id=\"piclink\"><a href=\"controlpanel.php?action=quickenable&uid=".$line["id"]."\"><img src=\"images/reddot.png\" title=\"".$line["name"]." Esta Desactivado (haga clic para activar)\"></a></div>";

Etiquetas: fecha
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 17:31.