Worldwide Posted March 11, 2010 Share Posted March 11, 2010 I wrote this code to display how many users or in my server, But for some reason I get weird display of no one being on when there is people on or I get 1 user on when there more then one user on. <?php //first you need to define db info define('mySQL_hostname', '66.176.96.57'); //database IP define('mySQL_database', 'newdb'); //database name define('mySQL_username', 'root'); //database user define('mySQL_password', ''); //database password //connects to mysql $db_link = mysql_pconnect( mySQL_hostname, mySQL_username, mySQL_password ) or die( 'Error connecting to mysql<br><br>'.mysql_error() ); //connects to Database $db_select = mysql_select_db( mySQL_database, $db_link ) or die( 'Error connecting to Database<br><br>'.mysql_error() ); //selects desired table $chars=mysql_query("SELECT * FROM characters"); $i=0; $x=0; //while $i is smaller than number of rows repeat the code while ($i < $rows) { $online=mysql_result($chars,$i,"online"); //looks into characters table, under column online(if player is online its "0" else "1"), at row $i if ($online == 1) { $x++; } // if column online at row $i is "1", increase $x $i++; //increase $i } print 'Online players:<em>'.$x.'<em>'; //prints out the $x number of players online ?> Can anyone tell me if i did something wrong, Any help would be great! Thanks! =D Quote Link to comment Share on other sites More sharing options...
schilly Posted March 11, 2010 Share Posted March 11, 2010 you know you could just do this: $online_users = mysql_result(mysql_query("SELECT count(id) FROM characters WHERE online = 1"),0); "id" is your primary key for the table. Quote Link to comment Share on other sites More sharing options...
Worldwide Posted March 11, 2010 Author Share Posted March 11, 2010 Thank you so much it fixed it.. =D Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.