I have a MySQL table called images, each with a rating from 1-10. The column
is a decimal(10,2). For simplicity's sake, let's say i have the following:
CREATE TABLE images (
image_id int not null auto_increment,
image_path varchar(255) not null,
rating decimal(10,2) not null,
What I'm looking to do is be able to pull from the database the ranked
position each image is in. I.e. "this image is ranked 70 out of 121"
=SQL has no ranking method. However you can (1) select data/rating values
out from the table, (2) count how many rows/ratings appear in the table, (3)
sequence the result set by rating to rank them.
=SELECT data from the table and have it sequenced according to the value in
ORDER BY rating DESC;
=the DESC is because ranking usually means highest-first!
=When the record/resultset hits PHP, you can use MYSQL_NUM_ROWS() to find
the number of rows returned from the database - and answer the "this image
is ranked ... out of ???" question.
=Now you can run a FOR loop, to extract each row from the result set (from 1
to 'num_rows'). Each cycle through the loop, the for loop counter will
answer the "this image is ranked ??? out of ..." question.
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php