Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rzorr

Comparar Datas

Recommended Posts

Boa noite Pessoal

 

Quero saber se alguém pode me dar uma força eu tenho cadastrado no banco datas no formato Y/M/D então eu queria comparar essa data que esta no banco com a data atual, e então trazer para tela somente o que for igual a data atual, o que eu ja tentei foi o seguinte:

 

 

$data_agora = date("Y-m-d");

 

ai eu peguei o que tem no banco com uma consulta ai eu comparei normalmente

 

if($data_agora == $data_banco['data']){

 

faz uma ação;

 

}else{

 

faz outra coisa

 

 

}

desde já obrigado aguardo ajuda de alguém!

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

$dattte = date("Y-m-d");

echo $dattte;


$busca_posts = mysql_query("SELECT * FROM postagem ORDER BY ID DESC ") or die (mysql_error());

$busca_cont = mysql_num_rows($busca_posts);

$data_hoje = date();

echo $data_hoje;

if($busca_cont['data'] == $dattte){


echo 'Opsss não há postagem hoje';



}else{


while($ln = mysql_fetch_array($busca_posts)){

$titulo = $ln['titulo'];

$dataaa = $ln['data'];

$imagens = $ln['imagem'];

$texto = $ln['texto'];



?>






<div id="post">

<h4 class="titu"><?php echo $titulo ;?><h4 class="dat"><?php echo $dataaa; ?> </h4> </h4>

<img class="img" src="imagens/<?php echo $imagens ; ?>" /><br/>

<p class="texto"><?php echo $texto . '<br/>' ;}}?> </p> <br/>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas eu já tenho um o mysql_fetch_array no while o mysql_num_rows eu to usando para contar os resultados do banco

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você não entendeu a colocação do rockrgo.

 

mysql_num_rows() retorna um inteiro em caso de sucesso ou FALSE em caso de falha e não um array o qual possua o índice data que você está usando na comparação, veja a diferença:

 

 

if( mysql_num_rows( $query ) !== FALSE ) {
 
    while( $rows = mysql_fetch_array( $query ) ) {
 
        if( $rows['data'] == date( 'Y-m-d' ) ) {
 
            // Do something
        } else {
 
            // Do something else
        }
    }
 
} else {
 
    echo 'No results!';
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe eu não consegui entender totalmente a ideia, mas deixa eu pergunta uma coisa

 

eu fiz um mysql_num_rows para contar quantos cadastro eu tenho no banco certo,

 

se no primeiro if que tenho eu fizer

 

 

 

if($busca_cont['data'] == date (Y-m-d)){

 

 

 

}else{

 

 

 

}

 

ele não consegue comparar a data porque num_rows retorna um inteiro certo?

 

a busca eu fiz assim

 

$busca_posts = mysql_query(SELECT * FROM postagem ORDER BY ID DESC) or die (mysql_error());

então foi feito o

$busca_cont = mysql_num_rows($busca_posts) e se eu mudar aqui para $busca_cont = msql_fetch_array($busca_post) funcionaria?

se puder me dar uma ajuda ai agradeço ainda to começando obrigado



então eu fis umas mudanças e funcionou mas se eu tenho mais só mostra um resultado para data atual, para ficar mais facil de entender eu tenho 3 cadastro para data do dia 20 só está mostrando 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Funcionaria sim....pois vc está comparando um item de array ($busca_cont['data']), então precisa de uma função que retorne um array, ou seja o mysql_fetch_array... Se vc usar a mysql_num_rows seria como não existisse a $busca_cont['data'].

Compartilhar este post


Link para o post
Compartilhar em outros sites

resolvi esse problema agora aparece todos os resultados para data normalmente, mas ("porque sempre tem um mas")

 

quando não a postagem para o dia

 

aparece diversas vezes escrito não há postagem.

 

vou posta o código ai para dar uma olhada

 

 

<?php
$busca_posts = mysql_query("SELECT * FROM postagem ORDER BY id ") or die (mysql_error());
$busca_cont = mysql_fetch_array($busca_posts);
$busca_contt = mysql_num_rows($busca_posts);
$data_hoje = date("Y-m-d");
while($busca_cont = mysql_fetch_array($busca_posts)){
if( $busca_cont['data'] == $data_hoje ){
$titulo = $busca_cont['titulo'];
$dataaa = $busca_cont['data'];
$imagens = $busca_cont['imagem'];
$texto = $busca_cont['texto'];
?>
<div id="post">
<h4 class="titu"><?php echo $titulo ;?><h4 class="dat"><?php echo $dataaa; ?> </h4> </h4>
<img class="img" src="imagens/<?php echo $imagens ; ?>" /><br/>
<p class="texto"><?php echo $texto . '<br/>' ;}else{
echo "não há postagem" ;}} ?> </p> <br/>
</div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Porque a lógica está errada... Se você quer apenas os resultados de hoje, filtre direto na query.

  <?php
           
          
            $busca_posts = mysql_query("SELECT * FROM postagem WHERE data = '".date("Y-m-d")."' ORDER BY id ") or die (mysql_error());
            $busca_cont = mysql_fetch_array($busca_posts);
            $busca_contt = mysql_num_rows($busca_posts);
            $data_hoje = date("Y-m-d");
           
           
                
            if($busca_contt < '1'){
echo "não há postagem" ;
}else{
            while($busca_cont = mysql_fetch_array($busca_posts)){
                            
                        
 
                                
                        $titulo =  $busca_cont['titulo'];
                        $dataaa =  $busca_cont['data'];
                        $imagens = $busca_cont['imagem'];
                        $texto  =  $busca_cont['texto'];
                        
                            
                        
 
        ?>
 
 
 
 
 
        <div id="post">
            <h4 class="titu"><?php echo $titulo ;?><h4 class="dat"><?php echo $dataaa; ?> </h4> </h4>
            <img class="img" src="imagens/<?php echo $imagens ; ?>" /><br/>
            <p class="texto"><?php echo $texto . '<br/>' ;}
}  ?> </p> <br/>
        </div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

direto no sql

$busca_posts = mysql_query("SELECT * FROM postagem WHERE data = NOW() ORDER BY id ") or die (mysql_error());

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.