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

Sistema de comércio aberto ou fechado


jpcarpanezi

Pergunta

<?php
        // CORREÇÃO DE DATA
            date_default_timezone_set('America/Sao_Paulo');

                $hora = date("w:H:m");
                $abre = "07:00";
                $fecha = "21:00";
                if($hora > $abre && $hora < $fecha and $date = '1, 2, 3, 4, 5') {
            echo '<font color="white">Clínica atualmente:</font> <font color="green"><b>Aberta</b></font>';
            } else {
            echo '<font color="white">Clínica atualmente:</font> <font color="red"><b>Fechada</b></font>';
        }
    ?>

Boas a todos, acima eu tenho meu sistema que indica se meu comércio está atualmente aberto ou fechado, entretanto, aos sábados o horário de fechamento é diferente dos dias de semana então adicionei o "w" no date(); e coloquei $date = '1, 2, 3, 4, 5' para sinalizar que quando as datas for Segunda a Sexta aberto, else clínica fechada, mas agora ele sempre da a clínica como fechada o que eu posso fazer para resolver?

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

<?php

// definição da região do horário/data
date_default_timezone_set('America/Sao_Paulo');

// tratar a hora:
$hora = date('H:i:s'); // H = hora, i = minutos, s = segundos
$abre = '07:00:00';   // só use aspas duplas quando tiver uma variável dentro
$fecha = '21:00:00';

//tratar a data:
$hoje = strtotime(date('Y-m-j'));  // Y = ano, m = mês, j = dia
$diaDaSemana = date('w', $hoje); // w = 0 (para domingo) até 6 (para sábado)

if (in_array($diaDaSemana, [1, 2, 3, 4, 5])) {  // se dia da semana for igual a 1, 2, 3, 4 ou 5
    if ($hora > $abre && $hora < $fecha) {
        echo '<span class="white">Clínica atualmente:</span> <span class="green">Aberta</span>';
    } else {
        echo '<span class="white">Clínica atualmente:</span> <span class="red">Fechada</span>';
    }
} else { // se estiver fora do intervalo entre segunda e sexta:
    echo '<p class="warning">Abriremos na segunda-feira às 7h</p>';
}

Link para o comentário
Compartilhar em outros sites

  • 0
1 hora atrás, lowys disse:

<?php

// definição da região do horário/data
date_default_timezone_set('America/Sao_Paulo');

// tratar a hora:
$hora = date('H:i:s'); // H = hora, i = minutos, s = segundos
$abre = '07:00:00';   // só use aspas duplas quando tiver uma variável dentro
$fecha = '21:00:00';

//tratar a data:
$hoje = strtotime(date('Y-m-j'));  // Y = ano, m = mês, j = dia
$diaDaSemana = date('w', $hoje); // w = 0 (para domingo) até 6 (para sábado)

if (in_array($diaDaSemana, [1, 2, 3, 4, 5])) {  // se dia da semana for igual a 1, 2, 3, 4 ou 5
    if ($hora > $abre && $hora < $fecha) {
        echo '<span class="white">Clínica atualmente:</span> <span class="green">Aberta</span>';
    } else {
        echo '<span class="white">Clínica atualmente:</span> <span class="red">Fechada</span>';
    }
} else { // se estiver fora do intervalo entre segunda e sexta:
    echo '<p class="warning">Abriremos na segunda-feira às 7h</p>';
}

Então cara mais assim, eu quero citar que ele não abre de domingo como você construiu, entretanto de sábado não fecha as 21 mais sim ao meio dia, como eu posso fazer para implementar, baseado nesse sistema que você criou que eu achei interessante!

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...