Skip to content
Permalink
3339c012d1
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
58 lines (42 sloc) 1.48 KB
{% extends "base.html" %}
{% block navTabs %}
{% include "helpers/sessionNav.html" %}
{% endblock navTabs %}
{% block content %}
<h1>Storing State: Example</h1>
<p>As HTTP is stateless we need some way of storing state.
Here we will look at some (un)common approaches that people might use</p>
<p>In this example, the devs are storing state in a slightly less particularly bad way</p>
<p>For the basic challenge. Try to become an "admin" user.</p>
<p>HINT: Pay attention to the form, and the request data being sent to the server. Dont over think it!</p>
<div class="section">
<h2>Login Form</h2>
<form method="POST">
<div class="row">
<div class="input-field col s12">
<input id="user" name="user" type="text">
<label for="user">User Name</label>
</div>
</div>
<input type="hidden" name="admin" value=0></input>
<button class="btn waves-effect waves-light" type="submit" name="action">Submit</button>
</form>
</div>
{% if uName %}
<div class="section">
<div class="card blue-grey darken-1">
<div class="card-content white-text">
<span class="card-title">Result</span>
<p>Loggged in as <strong>{{ uName }}</strong></p>
{% if admin == "1" %}
<p><strong>Admin:</strong> Contgratulations, our set the state correctly.
Now try the challenge <a href="{{ url_for('hiddenState') }}">State Challenge</a>
</p>
{% else %}
<p>Not Admin</p>
{% endif %}
</div>
</div>
</div>
{% endif %}
{% endblock content %}