Ir para conteúdo
Fórum Script Brasil
  • 0

Recuperar Datas Que Sejam Sabado Ou Domingo


Halfar

Pergunta

Tenho no banco de dados uma tabela que contem um campo chamado data.

Eu preciso selecionar os registros cuja data sejam sábado ou domingo..

Já andei pesquisando, e notei que as funçoes date() e getdate() trabalham apenas com datas do sistema, e não com datas externas, como as que estão armazenadas numa tabela em um banco de dados, que é o meu caso...

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Existe algum meio de determinar em que período de tempo estão as datas? Por exemplo se elas estão de 14/01/1993 à 09/01/2007 (ou seja, hoje)... porque você vai ter que determinar isso com certeza, baseado nisso você tem 2 opções:

Pegar o primeiro dia que aparece no seu BD que é sábado e gravar, e a partir dele ir somando 7 dias sempre... ai você descobre todos os sábados e repete isso com o primeiro domingo que estiver no BD...

A segunda opção é pegar um data qualquer e descobrir a que dia daquela semana corresponde o sábado e o domingo.

Para a primeira você pode pesquisar aqui no fórum que eu já postei um método para somar dias.

Para a segunda você faz assim:

$pegadata = //Pega data do BD LEMBRE-SE no formato unix yyyy-mm-dd
$dia = strtotime("$pegadata");
echo date("d/m/Y",day_of_week(0,$dia)); //0 É domingo, 6 é sábado.

Link para o comentário
Compartilhar em outros sites

  • 0

Ola,

Eu peguei uma rotina que tenho aqui num livro de php, é algo bem parecido com seu exemplo.

Os registros são listados por ordem de data. Mas o programa não está informando corretamente os dias da semana. Para ver a execucao do codigo abaixo acesse Listar dia da semana

Como as datas são muito antigas, talvez voce não tenha como comparar para ver se está certo. Para isto acesse o link Consulta dia da semana e voce podera checar.

Veja o codigo abaixo:

$sql = "Select * from Dolar order by data";

$Res = mysql_db_query("$dbname", "$sql", $conex);

$dias = array("Domingo", "Segunda-feira", "Terca-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sabado");

while($valor = mysql_fetch_array($Res)){

$xdata = substr($valor["Data"], 8,2) . "-" . substr($valor["Data"],5,2) . "-" . substr($valor["Data"],0,4);

echo "Data" . $xdata . "<P>";

$dia = strtotime($xdata);

$dia_semana = date("w", $dia);

echo "data atual " . $dia_semana . "<P>";

echo $dias[$dia_semana] . "<P>";

Link para o comentário
Compartilhar em outros sites

  • 0

Faz tudo com Sql é bem mais fácil...

1º Forma:

SELECT `data` FROM `tabela` WHERE DAYOFWEEK(`data`) = 1 OR DAYOFWEEK(`data`) = 7;
2º Forma:
SELECT `data` FROM `tabela` WHERE DAYNAME(`data`) = 'Saturday' OR DAYNAME(`data`) = 'Sunday'

T+

André

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...