php mysql tarih aralıgı query çalışmıyor

Web tabanlı uygulama geliştirme araçları(PHP, ASP vb...) ile ilgili konuları buraya yazabilirsiniz.
Cevapla
kazimates
Üye
Mesajlar: 332
Kayıt: 01 Tem 2005 12:40
Konum: Kıbrıs
İletişim:

php mysql tarih aralıgı query çalışmıyor

Mesaj gönderen kazimates »

merhabalar,
yazdığım sitede db de haberler alanım var ve bu haberlerin gösterimi için şu tarihden sonra aktif olacak ve şu tarihe kadar aktif kalacak kısmım var bunun için tablomda indexno, mesaj, startdate ve enddate alanlarım bulunuyor. queryde demem lazım ki git başlangıc ve bitiş tarihi bugüne eşit veya bugünden büyük eşit olanları bul demem lazım ama beceremedim. bu sorguda ki hatam nedir?

Kod: Tümünü seç

$today=Date("Y.m.d");

// SQL baglantisi yap
$totalrow=0;
$sql=("select mesaj from haberlertr where startdate>=\"$today\" and enddate<= \"$today\" ");
// yazidurum='0' yazidurum alaninda yazidurum degeri 0 olan yazilarin görüntülenmesi için.
$result = mysql_query($sql);
$totalrow = mysql_numrows($result);
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: php mysql tarih aralıgı query çalışmıyor

Mesaj gönderen mkysoft »

tarih alanını veri tabanına "yyyy-mm-dd" formatında göndermelisiniz. verdiğiniz örnekte server'ın tarih formatına göre yorumluyor php.
kazimates
Üye
Mesajlar: 332
Kayıt: 01 Tem 2005 12:40
Konum: Kıbrıs
İletişim:

Re: php mysql tarih aralıgı query çalışmıyor

Mesaj gönderen kazimates »

cevabınız için teşekkür ederim fakat cevabı tam kavrayamadım bunu query de nasıl göstereceğim? yada variable tanımlanırken mi olacak nasıl olacak?
tam olarak kod aşağıda ki gibidir.

Kod: Tümünü seç

<table width="100%" height="73%" border="1" bordercolor="#FFFFFF"  align="left" cellpadding="0" cellspacing="0" >
   <tr>
      <td align="center"><h5> SITEDEN HABERLER!!! </h5></td>
   </tr>   
   <tr>
   <td>
<?

$_today=Date('Y-m-d');

// SQL baglantisi yap
$totalrow=0;
$sql= ("select * from haberlertr where startdate> \".$_today\"   ");

// yazidurum='0' yazidurum alaninda yazidurum degeri 0 olan yazilarin görüntülenmesi için.
$result = mysql_query($sql);
$totalrow = mysql_numrows($result);

if ($totalrow > 0)
{
	?>
    <marquee scrolldelay=100 scrollamount="1" height="100%" direction="up" loop="true"> 
    <?
    // Eger yazilar tablosunda hiç yazi yoksa $sayi=0 ise bir döngü ile kayan bant kismini devre disi birakabilirsiniz.
    $i=0;
	while($i < $totalrow)
    {
    $yazi=mysql_result($result,$i,"mesaj");	
    echo "$yazi"; ?>  </br></br> <?    
	$i++;
	}
	?>    
    </Marquee> 
	<?
}
?>          
     </td>
     </tr>
</table>
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: php mysql tarih aralıgı query çalışmıyor

Mesaj gönderen Battosai »

Kod: Tümünü seç

$sql= "select * from haberlertr where startdate>".$_today;
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: php mysql tarih aralıgı query çalışmıyor

Mesaj gönderen mkysoft »

bir tane fonksiyon yazıp tarih formatını yyyy-mm-dd olarak çevirmelisiniz. Daha sonra SQL'e eklemelisiniz.
Cevapla