Ir para conteúdo

POWERED BY:

Arquivado

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

Elias Frederique de Melo

aniversarios em PHP ou MySQL?

Recommended Posts

Olá pessoal;....

 

procurei no forum o dia todo, e os exemplos que achei não dão certo...., e to tentando fazer com que imprima na tela os aniversariantes do mes mas não consigo.....

 

por favor me ajuidem!!!!

 

<?php include("conexao.php");//conecta ao banco$sql="SELECT * FROM tab_funcionarios WHERE month(aniversario) = month(NOW()) AND day(aniversario) = day(NOW())"; $consulta=mysql_query($sql);?>
e em uma parte da pagina index.php tento imprimir o seguinte

 

 

 

<?php print $result[aniversario] ?> - <?php print $result[nome] ?><?php print $result[email] ?>

 

se puderem me ajudar.....

 

por favor eu agradeço muitoooooo!!!

 

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites
$sql=mysql_query("SELECT * FROM tab_funcionarios");while($linha=mysql_fetch_array($sql)){$nome=$linha['nome'];$data=$linha['aniversariante'];}$datahoje=date(d/m/Y);if($datahoje==$data){echo "parabéns $nome : Hoje é o seu dia: $data"}

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode usar um BETWEEN

 

tipo

 

$data = date("Y-m")."-01";$data1 = date("Y-m")."-31";$sql="SELECT * FROM tab_funcionarios WHERE aniversario BETWEEN $data and $data2";$consulta=mysql_query($sql);

ele vai buscar tudo entre o mês que você está!

=)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não funcionou......

 

fiz da forma q você mostrou aí.....

 

mas num apareceu....deu até um erro de sintaxe.....

 

aí eu tirei os {} do

 

if($datahoje==$data) echo "parabéns $nome : Hoje é o seu dia: $data"

 

aí não apreceu nenum erro...mas ficou em branco o local onde deveria mostrar o nome e aniversario;;;;;;;;;;;

 

 

 

só lembrando...acho q esquci de falar....

 

o campo 'aniversario' é um campo date que recebe 0000-00-00

 

 

valeu...obrigado

 

tentei

 

 

$data = date("Y-m")."-01";$data1 = date("Y-m")."-31";$sql="SELECT * FROM tab_funcionarios WHERE aniversario BETWEEN $data and $data2";$consulta=mysql_query($sql);

mas tb num aparece nada......

 

cadastrei varios com aniversario nesse mes, pensando que fosse isso...mastb não aparece nada.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

preste atenção eu disse que esqueci as {} do whileOUTRA FORMA::::::$datahoje=date(Y-m-d);$sql=mysql_query("SELECT * FROM tab_funcionarios WHERE data=$datahoje");$row=mysql_num_rows($sql);if($row!=0) {echo "parabéns $nome : Hoje é o seu dia: $data"}

Compartilhar este post


Link para o post
Compartilhar em outros sites

aparece isso

 

Parse error: syntax error, unexpected '}', expecting ',' or ';' in C:\Apache2\htdocs\phproot\HOME\index.php on line 13

se eu tirar as }

 

aí não aparece erro, mas tb não aparece a data.....

 

 

Eu quero que apareça a lista de todos os aniversariantes do mes.....

Compartilhar este post


Link para o post
Compartilhar em outros sites

é só você pegar:$datahoje=date(Y-m-d);$sql=mysql_query("SELECT * FROM tab_funcionarios WHERE data=$datahoje");while($linha=mysql_fetch_array($sql)){$nome=$linha['nome'];$data=$linha['aniversariante'];$datahoje=date(Y-m-d);if($datahoje=='$data'){echo "$nomes<br>";}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara no bd como esta o nome do campo que recebe a data de aniversário!Preste atenção no tópico de tm ferreira eu nem prestei atenção quanto ao ano heheheTem algma data cadastrada no bd?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta assim

$data = "1950-".date("m")."-01";$data1 = date("Y-m")."-31";$sql=mysql_query("SELECT * FROM tab_funcionarios WHERE aniversario BETWEEN $data and $data2")or die (mysql_error());

ele vai buscar de 1950 até o ano atual

aki funciono!

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu galera...me desculpem....sou um pouco burrão mesmo....

 

....tentei isso e deu certo...

 

"SELECT * FROM cliente WHERE MONTH(aniversario) = MONTH(NOW())";

teria como mostrar a data no formato brasileiro????

 

00/00/0000 ou até mesmo 00-00

 

ou a forma de fazer isso é só em PHP mesmo....???

 

 

 

obrigado

 

_vina

vou tentar fazer o que você fez.....

valeu....

Compartilhar este post


Link para o post
Compartilhar em outros sites

deu certo....

so nao consigo aplicar....

 

eu to aprendendo PHP e ainda não entendo muito a estrutura......

 

eu fiz assim.....

 

include("Connections/conexao.php");//conecta ao banco$sql="SELECT * FROM tab_funcionarios WHERE MONTH(data) = MONTH(NOW())";// seleciona a tabela com os aniversariantes do mes atual$consulta=mysql_query($sql);

Em um determinado local da pagina.php

eu imprimo o seguinte:

 

 

<?php  while ($result =  mysql_fetch_array($consulta)){ ?><?php print $result[data] ?> - <?php print $result[nome] ?><?php } ?>

 

 

e agora com o seu codigo como altero isso???

 

 

eu não posso fazer isso né?

 

$e_d = explode("-","aniversario");

echo $e_d[2].".".$e_d[1].".".$e_d[0];

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.