New question

Question:

Date: 21-05-2019 13:14:52 (In Spanish)

buenas tengo una fecha inicial y una fecha final y quiero ver cuantos dias faltan para cada uno de los registros[Resolved]

estas son las filas que tengo y deseo agregar otra donde pueda ver cuantos dias hay entre una y otra... y siempre me resulta un error.... me pueden ayudar por favor

<tr>
<td style="font-size: 24px"><?php echo $mostrar['fecha_ingreso'] ?></td>
<td style="color:#088A08; font-size: 24px"><?php echo $mostrar['fecha_entrega'] ?></td>
Tags: AJAX - Back-end - Bootstrap - Database - Development - Form - HTML - HTML5 - Javascript - MySQL - PHP - PHP Advanced - PHP JSON - PHP MySQLi - Question - Script PHP - Start in Programming Votes: 0 - Answers: 6 - Views: 17 Share on: Google Facebook Twitter LinkedIn Link
 

Answers:

  • Date: 21-05-2019 14:49:46 Saludos...
    Esto te ayudara: (Depende de ti hacerla funcion)
    $fecha1 = new DateTime("2019-05-21");
    $fecha2 = new DateTime("2019-11-26");
    $diff = $fecha1->diff($fecha2);
    echo $diff->days . '  dias ';


    Nota:
    Siento que algo tan basico es mejor que busques primero en la red, lo puse pues tengo mucho trabajo pero los 5 minutos para cualquier otra cosa, jajaja, no se te olvide poner resuelta la pregunta...

    Saludos...

    Stryfe™
      Votes: 1 - Link answer
     
  • Date: 22-05-2019 11:56:28 hola si muchas gracias... es que yo busque en internet soy nuevo en esto disculpame por la brutalidad... jejejej pero mira lo puse asi y no me da


    ?>
    <?php
    $fecha1 = new DateTime('fecha_ingreso');
    $fecha2 = new DateTime('fecha_entrega');
    $diff = $fecha1->diff($fecha2);
    ?>

    <tr>
    <td style="font-size: 24px"><?php echo $mostrar['fecha_ingreso'] ?></td>
    <td style="color:#088A08; font-size: 24px"><?php echo $mostrar['fecha_entrega'] ?></td>
    <td ><?php echo $diff->days . ['dias']; ?></td>
    <td style="font-size: 24px"><?php echo $mostrar['opi'] ?></td>
    <td style="color: #FFFFFF; font-size: 24px" bgcolor="<?php echo $colorFila[$mostrar['estado']] ?>"><?php echo $mostrar['estado'] ?></td>
    <td style="font-size: 24px"><?php echo $mostrar['asesor'] ?></td>
    <td style="font-size: 17px"><?php echo $mostrar['detalles'] ?></td>
    <td style="font-size: 24px"><?php echo $mostrar['documento_ent'] ?></td>
    <td style="font-size: 24px"><?php echo $mostrar['no_guia'] ?></td>
    <td style="font-size: 24px"><?php echo $mostrar['transporte'] ?></td>
    </tr>

    <?php



    y este es el error que me sale:
    Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): Failed to parse time string (fecha_ingreso) at position 0 (f): The timezone could not be found in the database' in C:\xampp\htdocs\digital\index.php:64 Stack trace: #0 C:\xampp\htdocs\digital\index.php(64): DateTime->__construct('fecha_ingreso') #1 {main} thrown in C:\xampp\htdocs\digital\index.php on line 64
      Votes: 0 - Link answer
     
  • Date: 22-05-2019 12:42:31 Por que debes poner la fecha, el campo de fecha que tengas... en tu ejemplo:
    <?php
    $fecha1 = new DateTime($mostrar['fecha_ingreso']);
    $fecha2 = new DateTime($mostrar['fecha_entrega']);
    $diff = $fecha1->diff($fecha2);
    ?>



    y en la tabla pones:
    <td ><?php echo $diff->days; ?> dias</td>


    Como nota: $mostrar['fecha_ingreso'] y $mostrar['fecha_entrega'] deben tener el mismo formato.

    Saludos...

    Stryfe™
      Votes: 0 - Link answer
     
  • Date: 23-05-2019 11:03:53 Algo asi

    //Hace 1 año 8 meses 27 dias 28 minutos 5 segundos

    date_default_timezone_set('Europe/Madrid');
    $hace = new haceTanto('2010-02-22 18:42:00','s');
    echo 'Hace'.$hace;
    //Hace 1 año 8 meses 27 dias 28 minutos 5 segundos


    <?php
    class haceTanto extends DateTime {
     
        protected $strings = array(
            'y' => array('1 a&ntilde;o', '%d a&ntilde;os'),
            'm' => array('1 mes', '%d meses'),
            'd' => array('1 d&iacute;a', '%d dias'),
            'h' => array('1 hora', '%d horas'),
            'i' => array('1 min', '%d minutos'),
            's' => array('segundos', '%d segundos'),
        );
     
        public $profundidad;
     
        public function __construct( $fecha,$profundidad='i')
        {
            parent::__construct( $fecha );
            $this->profundidad = $profundidad;
     
        }
     
     
        public function __toString() {
    	     try 
    	    {  
    	     	$now = new DateTime('now');
    	        $diff = $this->diff($now);
     
    	        foreach($this->strings as $key => $value){
     
    	            if( ($text .= ' '.$this->getDiffText($key, $diff)) ){
     
    	            }
    	            if($this->profundidad == $key) break;
    	        }
    	        return $text;   
    	    } 
    	    catch(Exception $e) 
    	    {  
    	        trigger_error($e->getMessage(), E_USER_ERROR);  
    	        return '';  
    	    }  
     
     
        }
     
         protected function getDiffText($intervalKey, $diff){
            $pluralKey = 1;
            $value = $diff->$intervalKey;
            if($value > 0){
                if($value < 2){
                    $pluralKey = 0;
                }
                return sprintf($this->strings[$intervalKey][$pluralKey], $value);
            }
            return null;
        }
    }
    ?>
    
      Votes: 0 - Link answer
     
  • Date: 23-05-2019 11:52:01 hermano milll gracias.. ahi perdonas que estoy todo contento aprendiendo... tal vez sean cosas muy basicas para vos yo lo se.. pero por algo comenzamos....... te puedo molestar con esto mira.. ahora quiero colocar la fecha actual y la fecha de entrega... con el codigo que puse si me saca el valor pero me saca el siguiente error mira:
    Warning: date_timezone_set() expects exactly 2 parameters, 1 given in C:\xampp\htdocs\digital\fecha.php on line 73

    Notice: Undefined index: $fecha_actual in C:\xampp\htdocs\digital\fecha.php on line 75

    y este es el codigo que tengo... enque me equivoque:


    <?php

    date_timezone_set("America/Mexico_City");
    $fecha_actual=date("Y-m-d");
    $fecha3 = new DateTime($mostrar['$fecha_actual']);
    $fecha4 = new DateTime($mostrar['fecha_entrega']);
    $diff2 = $fecha3->diff($fecha4);

    ?>

    <tr>
    <td style="font-size: 24px"><?php echo $mostrar['fecha_ingreso'] ?></td>
    <td style="color:#088A08; font-size: 24px"><?php echo $mostrar['fecha_entrega'] ?></td>
    <td ><?php echo $diff->days; ?> dias</td>
    <td ><?php echo $diff2->days; ?> dias</td>
      Votes: 0 - Link answer
     
  • Date: 23-05-2019 13:09:49 Saludos terricola...
    Solo lee un poco el error, te dice de parametros, ya que ha de ser referente a objeto.

    datetime.settimezone

    Ahi esta la documentacion oficial con ejemplos, para que puedas revisar ello.

    Con los ejemplos estoy seguro que podras resolver ello.

    Saludos .

    Stryfe™
      Votes: 0 - Link answer
     
To actively participate in the community first must authenticate, enter the system.Sign In
 
frjcbbae garagebible.com