Jump to content


This topic is now archived and is closed to further replies.


Strange Loop Result

Recommended Posts

I am writing a php script the stores contact info in a database and then ranks the by the rank that i give them. I am having a problem when it comes to changing their ranks. Let me give you an example:
Joe Smith has a rank of 1
John Doing has a rank of 2
Beth Franks has a Rank of 3
Jim Johnson has a Rank of 4

Now what should happen is that if i want Jim to have a rank of 2 it should bump down everyone elses score. Instead when i run it, it gives Jim a score of 2 and everyone else a score of 4. For the life of me i can't figure out why.

$rank=$ud_rank; // copies the ud_rank to rank, rank  is used in the while loop

    @mysql_select_db($database) or die("Unable to Connect to database");
    $query="SELECT * FROM spots ORDER BY rank";
    $num=mysql_numrows($result); //gets the number of rows in the table
    $newrank=$rank; //copies the current records rank to newrank
    $runs= ($num - $rank); //tells how many times the while loop needs to run
    while ($runs > 0){
     echo "Rank = $rank <br>";
    $newrank=($newrank + 1); //adds one to the new rank
    echo "New Rank =$newrank <br><br>";
    $query="UPDATE spots SET rank='$newrank' WHERE rank='$rank'"; //stores the new values
    @mysql_select_db($database) or die ("Unable to connect to Database");
    $rank=($rank + 1); //addes 1 to the newrank
    $runs=($runs -1); //subtracts one to limit the rumbers of runs...

// tell mysql to update the changes
$query="UPDATE spots SET name='$ud_name', address='$ud_address', city='$ud_city', state='$ud_state', phone='$ud_phone', rank='$ud_rank' WHERE id='$ud_id'";
//do not forget this it is needed to connect to the data base
@mysql_select_db($database) or die ("Unable to conect to Database");
echo "Record Updated";


Any thoughts? For life of me i can't figure it out... if i need to i can post the previous page where the updated information is given....

Share this post

Link to post
Share on other sites


Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.