Problema con fecha Timestamp en PHP

Master_0n3

Buenas!!

Tengo un problema al que no le encuentro solucion. Resulta que tengo en una base de datos SQL Server 2000 y pretendo recoger un campo que es de tipo smalltimestamp y hago lo siguiente.

$ssql = "SELECT DailySchedule.Date FROM DailySchedule WHERE DailySchedule.IDEmployee = 723";
                    $resultado = sqlsrv_query($conexion, $ssql, array(), array( "Scrollable" => SQLSRV_CURSOR_KEYSET ));
                    @$nFilas = sqlsrv_num_rows($resultado);
                    while($fila = sqlsrv_fetch_array($resultado, SQLSRV_FETCH_ASSOC)) {
                            $fecha = date("d-m-Y", $fila["Date"]);
                            echo $fecha;
                        }

Y me salta el siguiente error:
Warning: date() expects parameter 2 to be long, object given in ...

He estado buscando en la web de php y demas y salen 'soluciones', pero todas me dan error y preguntaba si alguien sabe como solucionar esto.

Gracias de antemano ;)

elkaoD

¿La columna Date es un timestamp Epoch en la BD?

Haz un echo de la columna.

1 respuesta
Master_0n3

#2 Epoch? xD, perdona mi ignorancia pero no se a que te refieres :P

No puedo hacer un echo, me da otro error!

elkaoD

http://en.wikipedia.org/wiki/Epoch_time

¿Cuál es ese otro error en concreto?

1 respuesta
Master_0n3

#4, La fecha sale algo así: 2005-09-28 00:00:00

Y el error que me da haciendo un echo de la fecha es este:

Catchable fatal error: Object of class DateTime could not be converted to string in

Master_0n3

Vale, ya esta solucionado.

$dia = $fila["Date"]->format("d");
         echo $dia . "<br>";

Así funciona =)

Saludos

Master_0n3

Bueno ya que tengo el post abierto voy a hacer otra pregunta, asi no abro otro...

Como puedo hacer un combo box en el cual quiero poner ciertos años, por ejemplo desde el 2005, hasta el año en el que estamos?

Osea que en cuanto sea 01/01/2012 se aumente y se inserte el nuevo año?

2 respuestas
elkaoD

#7 es mejor abrir nuevos hilos, así cada pregunta está separada.

Lo que preguntas se hace con bucles, imprimiendo en el bucle los options del select.

MisKo

#7 justo como te dicen, mejor crear otros hilos, pero te lo pongo

<select>
<?php for($year = 2000 ; $year <= date('Y') ; $year++) { echo "<option value='$year'>$year</option>" ; } ?>
</select>
Master_0n3

Muchas 'thankius' a los dos =)

Usuarios habituales

  • Master_0n3
  • MisKo
  • elkaoD