Problema trabalhando com datas

Adrian,

Faz um debug rápido ae, debaixo do $filter = $this->getFilter(), faz assim:




$filter = $this->getFilter();

print_r($filter); exit();



Ai ao submeter o formulário, você vai saber como está indo a data para a query.

Newerton,

Tá indo assim:




Array ( 	[req_saidaprev] => 1317852112 	[ate_datasaida] => 1319148112 ) 



Onde seria pra tá mostrando assim:




Array ( 	[req_saidaprev] => 05/10/2011 	[ate_datasaida] => 20/10/2011 ) 



tá indo da forma errada, claro. Como trato isto?

Sds,

Adrian Lucas

Se sua req_saidaprev e ate_datasaida for date no MySQL, então o correto seria yyyy-mm-dd, ele está indo como timestamp.

Muda sua função, e veja se está indo a data formatada.


private function getFilter() {

	return array(

		'req_saidaprev' => isset($_POST['req_saidaprev']) ? date('Y-m-d', CDateTimeParser::parse($_POST['req_saidaprev'], Yii::app()->locale->dateFormat)) : date('Y-m-d', strtotime('now - 15 day')),

		'ate_datasaida' => isset($_POST['ate_datasaida']) ? date('Y-m-d', CDateTimeParser::parse($_POST['ate_datasaida'], Yii::app()->locale->dateFormat)) : date('Y-m-d', strtotime('now')),

	);

}

Faz a depuração denovo.

Cara deu certíssimo, muito obrigado. Agora Newerton sabe dizer se é possível eu colocar um SUBTOTAL por veiculo, por exemplo, um subtotal na tabela desta imagem abaixo.

Sds,

Adrian Lucas

Fica a dica e garanto que essa função funciona que é uma beleza

// supondo que retorno aaaa/mm/dd




public function replace_data($data)

{

	if ($data){


		return $data{8} . $data{9} . "/" . $data{5} . $data{6} . "/" . $data{0} . $data{1} . $data{2} . $data{3};

	}

	else {

		return "Não especificado";

	}

}



usei isso no cgridview entre outros …

Amigos,

Tenho uma tabela que tem algums campos date que irão pegar a data atual do sistema. Criei alguns cenários, na verdade por trás irá funcionar como um UPDATE da tabela, só que quando o usuário clicar em Receber só irá visualizar os dados do cenário, quando clicar em Atualizar a mesma coisa e em Devolver tabém.

Bem os problemas são os seguintes:

  • Quando clico no segundo cenário, Receber, onde visualiza seu dados. Ele apaga a data do cenário anterior.

  • Como criar um botão na GridView, que assim que clicar ele execulta a ação mais não sai da grid, pois tenho dois cenários que ele só joga no BD a data atual, lembrando que tentei com campo DATETIME (que seria o correto) mais não tive êxito.

Por favor, quem puder me ajudar agradeço.

Mudando um pouco de assunto. Desejo a todos um [size="5"]Feliz Natal[/size], que Deus estejam em seus lares e que possa trazer muitas felicidades e prosperidades.