es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Temporizador de cuenta regresiva, oferta de subasta en los últimos 10 minutos.

Actualmente estoy trabajando en una página de subastas, pero me he encontrado con un pequeño problema o simplemente un bloqueo en mi cabeza.

Logré poner, cuando se presiona la oferta, se extiende el temporizador de la subasta por 10 minutos. Pero tengo que hacer que solo los últimos 10 minutos de la subasta produzcan 10 minutos cuando se hace clic en “ofertar ahora”, no todo el tiempo que dure la subasta. Espero no haber complicado las cosas.

$expiry_date = get_post_meta($_POST['pid'],'listing_expiry_date',true);

$expiry_date = date("Y-m-d H:i:s", strtotime( $expiry_date . " +300 seconds") );

update_post_meta($_POST['pid'],'listing_expiry_date', $expiry_date );
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para extender el temporizador de la subasta sólo por 10 minutos durante los últimos 10 minutos de la subasta, se puede agregar una condición antes de actualizar la fecha de expiración. La condición verifica si el tiempo restante es menor o igual a 10 minutos antes de extender el temporizador por 10 minutos.

    $current_time = current_time( 'timestamp' );
    $expiry_date = get_post_meta( $_POST['pid'], 'listing_expiry_date', true );
    $remaining_time = strtotime( $expiry_date ) - $current_time;
    
    if ( $remaining_time <= 600 ) { // 600 segundos = 10 minutos
        $expiry_date = date( "Y-m-d H:i:s", strtotime( $expiry_date . " +600 seconds" ) );
        update_post_meta( $_POST['pid'], 'listing_expiry_date', $expiry_date );
    }
    

    Este código calcula la hora actual y el tiempo restante hasta la fecha de expiración de la subasta. Si el tiempo restante es inferior o igual a 10 minutos (600 segundos), entonces la fecha de expiración se actualiza agregando 600 segundos (10 minutos) a la fecha de expiración actual. Finalmente, la fecha de expiración actualizada se almacena en el meta post.

Comments are closed.