Как получать дату и использовать для update PHP и MySQL?

Передо мной предстает проблема с PHP, которая искала приносить из SQL дату, которая играет как истечение срока, и хранить ее в переменной, следующей за этим, санкционировать, если эта дата большая или меньшая, чтобы мочь выполнять один update увеличивая 1 или 2 месяца с переменной $meses.

$meses = $_POST['meses'];

$sql= "SELECT fecha_ven FROM usuario WHERE user='$user'";
$vencimiento = $mysqli->query($sql);

if ($meses2 == 1){
    $fecha = strtotime( '+1 month' , strtotime( $vencimiento ));
    $fecha = date( "Y-m-d (H:i:s)" , $fecha);
}
elseif ($meses2 == 2){
    $fecha = strtotime ( '+2 month' , strtotime ( $vencimiento ) ) ;
    $fecha = date( "Y-m-d (H:i:s)" , $fecha);
}
$consulta = "SELECT creditos FROM admins WHERE user='".$_SESSION["user"]."'";
$resultado2 = $mysqli->query($consulta);

if ($resultado2 >= $meses){
    if ($vencimiento >= $fecha){        
        $sql = "UPDATE usuario SET pass='$pass', nombre='$nombre',    fecha_ven='$nuevafecha2' WHERE user= '$user'";
        $resultado = $mysqli->query($sql);
        $restar_propietario = "UPDATE admins SET creditos = creditos - $meses WHERE user ='".$_SESSION["user"]."'";
        $restado = $mysqli->query($restar_propietario);
    }
    else{
        $sql = "UPDATE usuario SET pass='$pass', nombre='$nombre', fecha_ven='$nuevafecha', status='$status'  WHERE user= '$user'";
        $resultado = $mysqli->query($sql);
        $restar_propietario = "UPDATE admins SET creditos = creditos - $meses WHERE user ='".$_SESSION["user"]."'";
        $restado = $mysqli->query($restar_propietario);
    }
}

Намерение - что, если дата истечения срока >= в настоящую дату, увеличьте 1 в месяце в ту же дату истечения срока, и в случае, если он будет меньше, чего я требую, состоит в том, чтобы он распределил его 1 месяц начиная с сегодняшнего дня, дня update.

2
задан 23.01.2017, 00:53
0 ответов

посмотрим он подает тебе это, что он использует недавно:

$timeActual= time();   // Obtenemos el timestamp del momento actual
$timeVencimiento = strtotime($fechaConsultaSQL); // Obtenemos timestamp de la fecha de vencimiento

// Calculamos el número de segundos que tienen esos 30 días
$segundos = 30 * 24 * 60 * 60;

// Condición: Si la diferencia entre la fecha de vencimiento y la fecha actual es menor de 30 días
if( $timeVencimiento-$timeActual < $segundos) { codigo si es menor a 30}else {codigo si es mayor}

Я надеюсь, что он служит, объятие!

2
ответ дан 03.12.2019, 17:32