Campos Data e Hora para Campo DataTime

analise o formato interno dos campos.

‘echoe’ na onload o valor dos campos e analise.

não simulei em uma app do tipo formulário pois não tenho uma tabela que possa simular exatamente seu problema, as a situação é a mesma.

Haroldo,

Já fiz isso, exatamente assim, mas a bronca persiste, quando vou ver o insert só joga a data sem a hora no banco. :frowning:

Vou acabar tendo que fazer uma mudança estrutural no sistema para permitir modificar o banco de dados para que as duas tabelas fiquem com campos separados, só por conta desse picuinha. :frowning:

Ronaldo,

Podes nos mostrar como está tua rotina?

Facinho fazer isso, pega pela própria tabela do MySQL e faz update como: SELECT DATE_FORMAT(STR_TO_DATE(‘5/16/2011 20:14 PM’, ‘%c/%e/%Y %H:%i’), ‘%Y-%m-%d %H:%m:%s’)

Juntando o campo DATA e HORA que já tem, e fazendo UPDATE no DATETIME.

Meus Caros,

Acabei mudando a estrutura da rotina, alterei o banco de dados para que as duas tabelas fiquem com campos separados, não era o que eu gostaria de ter feito mas pelo menos assim está funcionando. :frowning:

Obrigado a todos pela ajuda. Valeu.

Blz então.

Eu consegui resolver seu caso:

Tinha na base de dados os campos data e hora separados, o que eu fiz para unir foi primeiro criar um campo novo do tipo TIMESTAMP.

alter table “tabela” add data_hora TIMESTAMP default null;

Em seguida concatenei os valores com o seguinte script:

UPDATE “tabela” SET data_hora = TIMESTAMP(data,hora);

Usei o MariaDB 10.4

Uma maneira que uso nesse caso:
Crio 2 campos virtuais, nesse exemplo {data} e {hora} para posicionar no formulário.

Nos eventos BeforeInsert ou BeforeUpdate:
//Cria uma variável do tipo DateTime para concatenar a data e hora dos campos virtuais, importante colocar o espaço entre elas
$datahora = new DateTime({data}." ".{hora});

//Atribui ao campo da tabela (nesse exemplo o {data_evento}, a variável com a data e hora concatenada
{data_evento} = $datahora->format(‘Y-m-d H:i:s’);

Funciona muito bem dessa maneira, para qualquer banco.