Game for kids

I want create a new game where players can earn points when they add a new review as a scientific fact on any topic from the science topics list. They can even get points when they create any science topic and their topic is visited each time. The game should store and show the list of created reviews so that other players can create new and different reviews with new and different scientific facts and it should not accept a review which is done before. There should be a gallery of previous days topics and reviews and visitors could surf on these reviews . When someone reads a review the creator of that review should also get another point. So this game should create a scoreboard for the gamers showing the top ten on total score, top ten in the last week, top ten on the most visited reviews, top ten on the number of reviews to the same topic. This is my second day using Glide. I’m very new and trying to understand everything step by step

1 Like

And what is your question?

I have already made an app. It works. But when a user add some review or data under any topic I want to see that users name beside his review. And others should not change this review. ( Now anybody can change) Besides the user should get a point when he add this review or his review is read by others. And there should be a scoreboard where the scores of the users can be seen.

add the user row ID or email to the response

As Uzo noted above, you can add a column store the user’s rowID or email in the destination table, and use a relation + lookup combo to retrieve their name and/or photo for displaying purposes.

Once you have the setup above, add a condition in your Edit action to only show when the recorded user ID/email is the same as the signed-in user’s ID/email.

Add a relation in the Users table to the Reviews table using the user’s rowID/email to get the list of reviews they have written.

For “read”, you have to define this, but for an example, you can add an action to increase a “Read” basic number column when a user “clicks” a review to read.

Add a math column in the Reviews table with the formula:

Points for each Review submission + Read count * Points for each Read count

Back to the Users table, create a rollup to sum the total points above through the Reviews relation, and display your scoreboard to all users.


Thank you so muchThinDinh. But I couldn’t do what you describe in your first sentence . Probably I should learn more to get help . I used ChatGPT ,it translated what you describe in your first sentence as a Step-by-Step Process: I will try to apply these steps

1.	Store User Identifier with Review:
•	Ensure that when a review is added, the user’s identifier (email or rowID) is stored in the same table as the review.
2.	Create a Relation Column in Reviews Table:
•	Add a new relation column in the Reviews table.
•	Set this column to match the user identifier from each review with the same identifier in the Users table.
3.	Create a Lookup Column:
•	Add a new lookup column in the Reviews table.
•	This lookup column should use the relation you just created to fetch the user’s name and photo from the Users table.
4.	Display User Information with Review:
•	Now, in your app’s interface where reviews are displayed, include the user’s name and photo from the lookup column alongside each review.
1 Like

The steps that ChatGPT gave you are spot on :+1:

Just one thing that might not be obvious given that you are new to Glide.
With the first step, you do not need to ask the user to enter their email/identifier. Instead, you should pass that as a column value with the form submission. See below:

1 Like

Thank you Darren. But I even couldn’t do what ChatGPT advised to me at this moment, I tried but not successful yet. Probably I need some more training to be able to understand these very basic help from the community. I started to watch and exercise certification videos now. Any other structured learning program is great for me if you know other than that

I would recommend the Introduction to Glide series. That should give you a good grounding in the basic concepts.

1 Like