2012-02-01 4 views
0

다음 코드를 사용하여 데이터베이스에서 가져온 이벤트 세부 정보를 표시했습니다.날짜순으로 mysql 쿼리

<form name="event_form" id="event_form" action="" method="post" enctype="application/x-www-form-urlencoded"> 
      <table width="765" border="0" align="left" cellpadding="0" cellspacing="0" > 
      <tr> 
      <td> 
      <table width="765" border="0" align="left" cellpadding="0" cellspacing="0" id="results" class="fronttbl"> 
      <tr></tr> 
      <?php 
      $select = "SELECT * FROM `tbl_event`"; 
      $select_event = mysql_query($select); 
      $select_num = mysql_num_rows($select_event); 
      if($select_num > 0) 
      { 
       while($fetch = mysql_fetch_array($select_event)) 
        { 
         $feventid=$fetch['intEventid']; 
         $feventname=stripslashes(ucfirst($fetch['varEventname'])); 
         $fDate=$fetch['varDate']; 
         $seperate=explode("-", $fDate); 
         $year=$seperate[0]; 
         $month=$seperate[1]; 
         $date=$seperate[2]; 
         $fchiefguest=stripslashes(nl2br($fetch['varChiefguest'])); 
         $fvenue=stripslashes($fetch['varVenue']); 
         $ftime=stripslashes($fetch['varTime']); 
         $feventdetails=stripslashes($fetch['varEventdetails']); 
         echo "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"; 
        ?> 
        <tr> 
      <td> 

      <table width="100%" border="0" cellspacing="0" cellpadding="0"> 
    <tr> 
    <td width="30%" height="30" valign="top"><strong>Name of the event:</strong></td> 
    <td width="70%" height="30" valign="top"><?php echo $feventname; ?></td> 
    </tr> 
    <tr> 
    <td height="30" valign="top"><strong>Date of the event to be held:</strong></td> 
    <td height="30" valign="top"><?php echo $date.'-'.$month.'-'.$year; ?></td> 
    </tr> 
    <tr> 
    <td height="30" valign="top"><strong>Time of the Event:</strong></td> 
    <td height="30" valign="top"><?php echo $ftime; ?></td> 
    </tr> 
    <tr> 
    <td height="30" valign="top"><strong>Venue of the event:</strong></td> 
    <td height="30" valign="top"><?php echo $fvenue; ?></td> 
    </tr> 
    <tr> 
    <td height="30" valign="top"><strong>Name of the Chief Guest:</strong></td> 
    <td height="30" valign="top"><?php echo $fchiefguest; ?></td> 
    </tr> 
    <tr> 
    <td height="30" valign="top"><strong>Event Details:</strong></td> 
    <td height="30" valign="top"><?php echo $feventdetails; ?></td> 
    </tr> 

</table> 
<p style="border-bottom:1px dotted #CCCCCC;"></p> 
      </td></tr> 



    <?php    } 

       } 




      ?> 
      </table> 
      </td> 
      </tr> 
      </table> 
      <div id="pageNavPosition"></div> 
      </form> 

나는 내 데이터베이스 테이블에 날짜 필드를 가지고 입력의 형식은 다음과 2012-03-01과 같이 저장됩니다.

내 페이지가 필요합니다. 이벤트 순서를 최근 날짜/월/년으로 프런트 엔드에 표시하십시오. 예를 들어 오늘날의 이벤트도 마찬가지로 먼저 표시되어야합니다. 내가 어떻게 할 수 있니?

답변

2

ORDER BY을 사용하십시오 (... 그게 무슨 뜻입니까?)?

는 귀하의 조회를 변경

:

내가 프런트 엔드에 대한이 기능을 사용하여 이해
SELECT * 
FROM `tbl_event` 
ORDER BY varDate DESC 
+0

감사합니다. 효과가 있습니다. – designersvsoft

0

:

function changeFormat($date){ 
    $exp_date = explode('-', $date); 
    return $exp_date[2] . '-'.$exp_date[1].'-'.$exp_date[0]; 
} 

예 : echo changeFormat('2012-12-01');01-12-2012를 반환하고 당신이 원하는 어디 while 루프에서이 적용됩니다 날짜 표시