If the player will always touch the door when moving from one room to the next, it is the perfect place for a checkpoint.
Depending on your game, you may want to use the "save a game" action, which saves everything in the game exactly as it is at the time of saving (with a few exceptions you wont come across until you start coding), and it will load exactly as it was when saved. This can be an easy way to create a checkpoint, but can have problems. For example, if your game has lives, then you may only have one life left when you pass the checkpoint, then die in the room. When you respawn, you will only have one life (because that is how many you had when you saved the game), but you may want the player to respawn with 3 lives.
There are many reasons why a "save game" type checkpoint wouldn't work, so the other option is just to save the player's position in a variable.
When the player passes the door (use "object at position" in the step event, as you may have problems placing it in the collision event since you want to be able to walk freely through the door), use "set the value of a variable" to set the variable "save_x" to "x" and the variable "save_y" to "y" (without the quotes). You should also initialise the variables in the create event of the player, using the exact same actions. Then when the player dies, use the "jump to position" action, and put "save_x" in the "x" box, and "save_y" in the "y" box.
I can't get you. I'm new to this. But it's okay...