Jump to content


Photo

Checar Data


  • Faça o login para participar
4 replies to this topic

#1 paulofernandes

paulofernandes

    Novato no fórum

  • Usuários
  • 24 posts
  • Sexo:Não informado

Posted 04/07/2007, 08:28

olá galera!!!
é seguinte...
estou desenvolvendo um sistema de helpdesk e devido a uma norma da empresa chamados abertos após as 15:00 horas do mesmo dia só são atendidos no dia seguinte.

Gostaria de saber como devo fazer para o script php entender isso, pensei em fazer algo do tipo

se hora >=15

dia+1


porém e se for ultimo dia do mês? e se for ultimo dia do ano?

tabém deve testar se o dia da semana não é nem sabado nem domingo, e se for..começar a contar a partir de segunda

ele tem que tratar essas exceções...ai travei

abaixo segue me código!

espero que entendam!

hehe

abraço

$dia_atual = date("d");
$mes_atual = date("m");
$ano_atual = date("Y");

$hora_atual = date("H");
$minuto_atual = date("i");
$segundo_atual = date("s");
 
 
// Delimitado por barras, pontos, espaços e traços
list ($dia, $mes, $ano, $hora, $minuto, $segundo) = split ('[/.-.:. ]', $date_abertura);
$hora_1=$hora+2;
$hora_2=$hora+3;
$hora_3=$hora+4;

$data_abertura_pos1 = "$dia/$mes/$ano 15:00:00";
list ($dia_pos1, $mes_pos1, $ano_pos1, $hora_pos1, $minuto_pos1, $segundo_pos1) = split ('[/.-.:. ]', $data_abertura_pos1);

if($date_abertura >= $data_abertura_pos1){
	if($mes != $mes_atual){
		$mes_pos2=$mes_atual;
	}
	else{
	$mes_pos2=$mes;
	}
	
	if($dia != $dia_atual){
		$dia_pos2=$dia_atual;
	}
	else {
	$dia_pos2=$dia;
	}
	
	if($ano != $ano_atual){
		$ano_pos2=$ano_atual;
	}
	else {
	$ano_pos2=$ano;
	}
	$conta_hora = "$dia_pos2/$mes_pos2/$ano_pos2 08:00:00";
}else {
	$conta_hora = "$date_abertura";
}

$dt_atual = "$dia_atual/$mes_atual/$ano_atual $hora_atual:$minuto_atual:$segundo_atual";

$dt_abertura1 = "$dia/$mes/$ano $hora_1:$minuto:$segundo";
$dt_abertura2 = "$dia/$mes/$ano $hora_2:$minuto:$segundo";
$dt_abertura3 = "$dia/$mes/$ano $hora_3:$minuto:$segundo";

Edição feita por: paulofernandes, 04/07/2007, 08:34.


#2 Hellp

Hellp

    Turista

  • Usuários
  • 47 posts
  • Sexo:Não informado

Posted 04/07/2007, 08:53

faz com timestamp ^^'

procura no manual do php sobre as funcs time() e date()

#3 paulofernandes

paulofernandes

    Novato no fórum

  • Usuários
  • 24 posts
  • Sexo:Não informado

Posted 04/07/2007, 09:09

a data vem do banco de dados, e é pega com a função date do PHP

minha duvida é como tratar exceções a partir das 15 e no sabado e domingo para contar apenas a partir das 8 horas do dia seguinte

#4 bimonti

bimonti

    Super Veterano

  • Usuários
  • 2654 posts
  • Sexo:Masculino

Posted 04/07/2007, 10:55

Se o cara fizer o cadastro antes das 8h da manhã você fornece um Cappucino também ?! :lol:


Tem que fazer as verificações. Você já falou tudo o que precisa ser feito. if(cond){ //faz isso}else{ //faz aquilo}, ainda está disponível o else if para condições mais complexas.

Data de amanhã:
<?php print date("l dS F Y h:i:s A",mktime(0,0,0,7,4+1,2007));?>

Se hoje fosse dia 31:
<?php print date("l dS F Y h:i:s A",mktime(0,0,0,7,31+1,2007));?>

Imprime: Wednesday 01st August 2007 12:00:00 AM

O PHP é inteligente.. ^^

Tem "n" maneiras de se fazer isso. Sendo que eu acho a melhor a partir de um timestamp também.

Edição feita por: bimonti, 04/07/2007, 10:56.

WebFórum - Equipe de Desenvolvimento - Monitor
Posted Image
Yeah I do have some stories, and it's true I want all the glory ...

#5 paulofernandes

paulofernandes

    Novato no fórum

  • Usuários
  • 24 posts
  • Sexo:Não informado

Posted 04/07/2007, 11:48

creio que não me expressei bem..

reformularei minha duvida e posto aqui

abraço




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq