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

Listagem e data


MTavares

Pergunta

Prezados...

eu desenvolvi um relatório onde através de uma consulta do banco trás a seguinte listagem:

Data | Documento | Nome

...pois bem...só que no campo da data, aparece várias datas, sendo que no mesmo dia, vários documentos são gerados, ficando algo como:

Data | Documento | Nome

20-04-2008 | 00000001 | Carlos Drummond de Andrade

20-04-2008 | 00000002 | Santos Dummond

29-04-2008 | 00000003 | Renato Russo

Observe que no dia 20-04-2008 foi gerado dois documentos...até aí tdo bem.... pego essas duas datas e gerar uma numeração única... que tb já fiz... e ao lado de cada data, tem um input do tipo "checkbox", ficando dessa forma:

.....

<input type="checkbox" name="documentos[]" value="<?=$muito->NUM_DOC;?>"><?=$muito->DATA;?>

.....

....só o que não estou conseguindo é fazer com que....o cliente ao selecionar campos com datas diferentes, acuse que as datas não conscidem e não gere a numeração....porque tdo está OK, só faltando essa comparação de datas....

alguém poderia me dar essa força????.

abs

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Bom amigo vamos ver se entendi....

<input type="checkbox" name="documentos[]" value="<?=$muito->NUM_DOC;?>"><?=$muito->DATA;?>
// print <input type="checkbox" name="documentos[]" value="2008-04-20/00000001">2008-04-20
// correto?
se sim então
[code]
$divide = explode("/", $muito->NUM_DOC);
$divide[0]; // aqui sai a data

// teste logico

Imaginando que os dados de $muito->NUM_DOC iriam ser passados por metodo POST você pegaria eles na "outra" pagina dando um laço e fazendo o teste logico no primeiro indice do $divide

Link para o comentário
Compartilhar em outros sites

  • 0

Sim, mas esse não era o objetivo?

se você quer mostrar ao usuário qual das datas que está diferente voê imprimiria o indice dela

+/- assim:

// navega entre as datas selecionadas
for($i=0;$i<=$valor;$i++){

// testa data anterior com data do indice atual
if($divide[$i-1] != $divide[$i]{
echo "{$i}º está com a data diferente do {$i-1} arquivo"; 
} 

}

Link para o comentário
Compartilhar em outros sites

  • 0

Desculpe por não explicar mas valor seria a quantidade de box selecionadas pelo usuário...

como saber isso? você pode testar quantas foram peenchidas por ex:

$i = 0; // default do indice de navegacao
$valor = 0; // default do limite do segundo laço
$checks = $_POST["check"]; // pega os campos checkbox (tem que definir o nome correto dele)

foreach($checks as $check){  // navega pelos campos enviados
   if(isset($check[$i]) AND $check[$i] != ""){ // se for instanciado e diferente de nada acrescenta 1 ao valor do limite do segundo laco
   $valor = $valor + 1;
   }
$i++;
}

// navega entre as datas selecionadas
for($i=0;$i<=$valor;$i++){

// testa data anterior com data do indice atual
if($divide[$i-1] != $divide[$i]{
echo "{$i}º está com a data diferente do {$i-1} arquivo";
}

}
}

Logicamente há outras formas de fazer isso e essa não deve ser a melhor, mas foi a que eu consegui pensar agora.

Na hora de criar os campos você deve colocar [] na frente do nome

<input name="check[]">

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...