try: $sql = "select exhibition_name,to_char('YYYY',start_date) as start_date \ from exhibitions where exhibition_id = '$exhibition_id'"; ----- Original Message ----- From: "Lynna Landstreet" <lynna@xxxxxxxxxxxxx> To: <pgsql-php@xxxxxxxxxxxxxx> Sent: Wednesday, July 23, 2003 14:49 Subject: [PHP] Getting the year from a date column > I'm having a bit of trouble with one part of the PHP front end of the art > gallery database I'm working on - specifically, extracting the year from the > start date of an exhibition. I'm trying to print a list of exhibitions on > the artist info pages, with the name, gallery space and year for each one, > and everything's working except the year part. > > Here's what I have. First, near the beginning of the PHP portion of the > page: > > $exh_query = "SELECT exhibition_name, start_date > FROM exhibitions WHERE exhibition_id = '$exhibition_id'"; > $exhibition_info = pg_exec($db, $exh_query); > > Then further down, where I want the year to appear in the exhibition list: > > $date = getdate (pg_result($exhibition_info, 0, 'start_date')); > $year = $date['year']; > echo $year; > > (The 0 for row is because the way the code is structured, $exhibition_info > only contains one row.) But I'm not sure if getdate() is the right function > to be using. It was the only function I could find in the PHP manual that > was capable of breaking out the individual components of a date (day, month, > year, etc.), but it seems to be ignoring the actual date in the query > results and returning '1969' for everything. > > Any idea what I'm doing wrong? Is there a different function I should be > using instead for this? BTW, I'm using PHP 4.1 (and PostgreSQL 7.2), thus > the old-style pg function names (pg_result(), etc.). > > Thanks, > > Lynna > -- > Resource Centre Database Coordinator > Gallery 44 > www.gallery44.org > > > ---------------------------(end of broadcast)--------------------------- > TIP 9: the planner will ignore your desire to choose an index scan if your > joining column's datatypes do not match