Jump to content

Archived

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

jackal

Comparing data to be inserted to database rows

Recommended Posts

I create computer games in my spare time and I wanted to create an online high score board for my newest game. I am pretty new to php and mysql. I have been able to stumble my way thru creating the database, table, inserting the data from my game, and retrieving/displaying the scores. Here is the [a href=\"http://www.brainpanreviews.com/bustin_balls_highscores/index.php\" target=\"_blank\"]score board[/a]. As you can see there are several entries with jason 98 as the name and score. This is because I realized that hitting refresh resubmitted and posted over and over. To avoid this, I want the php script to check the database before inserting the new name and score. All I am worried about is checking that the same name and score don't appear together. I am not sure how to check the new name and new score to be submitted against the database rows.

 

I am not sure what is the best way to go about this without having the player register, use cookies, etc.

I would appreciate suggestions, examples, or code.

 

Thanks for any help.

 

jackal

Share this post


Link to post
Share on other sites

Well, there are two ways -- first, assuming that the "name" is unique, you could always issue a REPLACE instead of an INSERT statement. Second, you could simply only output the results grouped by name, and take the most recent entry. Personally, I think the latter makes more sense.

 

Hope that helps.

Share this post


Link to post
Share on other sites

I see what you mean but there is no way that the names will be unique. There may be 20 different jason's with 20 different scores, this score board is only for everyone to view the top scores and therefore all I am worried about is someone "spamming" the list using the refresh button.

 

I've been thinking about looping over the table and comparing names and scores. But I can't quite figure out how I would/should do this.

 

Share this post


Link to post
Share on other sites

The only other way to do this is redirect after the post, so that refreshing the page just shows the output again, but doesn't post again. Otherwise, you're out of luck if you can't uniquely define your users.

Share this post


Link to post
Share on other sites

I thought of that but I wasn't sure if the player would be able to use the "back" button and refresh the previous page which would then post/insert again. I think you're right and this is the best cure. I will start searching on how to redirect.

 

Thank you very much.

 

jackal

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.