Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal!
Olha eu de novo aqui.
É o seguinte estou com uma sql com erro dêem uma olhada:
$strSQL = mysql_query("SELECT * FROM cursos where $hoje >= dt_insc_fin or dt_insc_fin <> "0000-00-00" order by data desc LIMIT $start,$plimit");// SQL para exibição
Preciso que só apareçam os cursos que estejam com datas maior ou igual a data do dia e os cursos que não estiverme com a data final vazia.
Alguém pode me dar uma ajuda?
amigo talvez eu esteja viajando, mais você definiu algum campo depois do "WHERE" ? eu vi uma váriavel $hoje talvez você tenha colocado o valor dela como um campo, mais creio que seja a data, bom sou meio leigo mais olha isso ai :thumbsup:
$result = mysql_query("SELECT * ,
(RIGHT(CURDATE(),5) >= RIGHT(dt_insc_fin,5) AND RIGHT(CURDATE(),5) > RIGHT(dt_insc_fin,5)) AS dat
FROM date HAVING dat");
Supunho que a variavel $hoje armazene a data atual, é isto? se for você pode usar a função CURDATE que pega a data atual
Aqui eu vou pegar os cinco caracteres da direita para fazer a comparação:
2012-02-04. No caso o dt_insc_fin tem que ser o nom,e do campo em que esta armazenado um registro do tipo DATE.
O AS dat ira criar um campo com o nome dat
veja meu script de teste funcionando
<?php
//inclui o arquivo de conexão
if(file_exists("conectar2.php")) {
require "conectar2.php";
} else {
echo "Arquivo conectar.php nao foi encontrado";
exit;
}
//seleciona o banco de dados
mysql_select_db("$banco", $conexao);
//query
$result = mysql_query("SELECT * ,
(RIGHT(CURDATE(),5) >= RIGHT(dt,5) AND RIGHT(CURDATE(),5) > RIGHT(dt,5) ) AS dat
FROM date HAVING dat");
//estrutura de controle
//Se nao achar nada, lança essa mensagem
if (empty($result)) {
echo "Nenhum registro encontrado.";
}
while($row = mysql_fetch_array($result)) {
echo $row['id'].'<br>';
}
?>
Tem como mandar seu script total ?
Para que eu possa tentar te ajudar. rsrsrs