RE: [PHP-DB] Can't get my head around this problem...

From: Date: Wed, 25 Apr 2001 03:02:52 +0000
Subject: RE: [PHP-DB] Can't get my head around this problem...
References: 1  Groups: php.db 
Request: Send a blank email to php-db+get-8859@lists.php.net to get a copy of this message
Thanks Alex!! I'll give that a go! -----Original Message----- From: Alexander Fordyce [mailto:alex@ax-im.com] Sent: Tuesday, April 24, 2001 8:07 PM To: Tyrone Mills; php-db@lists.php.net Subject: RE: [PHP-DB] Can't get my head around this problem... Looks to me like you'd be better off using an associative array, since associating the count with the day of the week is the whole point. How about... while (list($count, $day) = db_fetch_row($result)) $lastweek[$day] = $count; You'd have to tweak the logic of the rest of the script to use the hash, but it's a more natural way to do it. Just a suggestion... -Alex > -----Original Message----- > From: Tyrone Mills [mailto:t_mills@telus.net] > Sent: Tuesday, April 24, 2001 3:58 PM > To: php-db@lists.php.net > Subject: [PHP-DB] Can't get my head around this problem... > > > Hello all... > > I've got what is probably a stupid question, it's a problem I can't seem to > get my head around it. Any help will be greatly appreciated. > > I'm pulling a count of connections from a MySQL database and the day of the > week it occurred on. Now the result set doesn't include empty values, so if > there were connections on only 2 days, I only get 2 rows returned, if there > were connections on 4 days, I get 4 rows returned. You get the idea... > > Here is the PHP code I am using the get the data: > > $sql = "SELECT COUNT(*), (DAYOFWEEK(dialer_login_date) -1) AS DAYOFWEEK FROM > dialer_login WHERE dialer_id = $dialer_id AND > WEEK(date_format(dialer_login_date, '%Y-%m-%d'),0) = WEEK('$last_week',0) > GROUP BY DAYOFWEEK"; > > $result = db_query($sql); > > while ($daily_count = db_fetch_array($result)) > { > $lastweek[] = $daily_count["COUNT(*)"]; > $day[] = $daily_count["DAYOFWEEK"]; > } > > For the sake of this question, let's say that there were connections on only > 2 days, so we get a result set with 2 rows. Something like this: > > COUNT(*) DAYOFWEEK > 8 2 > 3 4 > > That's great, but I need the array $lastweek to have the value 8 in element > 2 and the value 3 in element 4 and all other elements (0,1,3,5,6) as zero. > As it sits, they are in elements 0 and 1 respectively. > > I get this: > > $lastweek[] = 8,3 > > I need this: > > $lastweek[] = 0,0,8,0,3,0,0 > > Now I've written all manner of wild and wonderful loops that iterate through > either $lastweek or $day and try and build a proper array. Invariably > something doesn't work right. I'm sure I'm grossly over complicating this, > but I am at my wits end. Any thoughts or ideas are most welcome. > > Thanks!! > > Tyrone Mills > ____________________________________________________ > UNIX is user-friendly, it's just picky about who its friends are... > > > > > > -- > PHP Database Mailing List (http://www.php.net/) > To unsubscribe, e-mail: php-db-unsubscribe@lists.php.net > For additional commands, e-mail: php-db-help@lists.php.net > To contact the list administrators, e-mail: php-list-admin@lists.php.net > >

« previous php.db (#8859) next »