Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Project Feedback! #1

Open
codepathreview opened this issue Feb 10, 2017 · 0 comments
Open

Project Feedback! #1

codepathreview opened this issue Feb 10, 2017 · 0 comments

Comments

@codepathreview
Copy link

Hello Promila,

👍 Nice work! In order to learn web security, we have to learn the basics of web development. Because web development isn't the goal of this course, everyone will receive the same UI score, so you can focus on the security aspects of the course.

We're using PHP because Facebook is sponsoring this course, but it's also the easiest framework to demonstrate some of these security issues. PHP without a framework is very similar to Sinatra (Ruby) or Flask (Python), which are two very popular barebones web frameworks. Modern PHP with a framework is very similar to Rails and Django. All of the tasks in the weekly projects are very similar and applicable to what you would need to do in Ruby or Python.

The purpose of this assignment was to explore the following concepts:

  • Setting up a database table.
  • Handling GET vs POST requests.
  • Doing server-side form validation.
  • Displaying form errors.

To evaluate your understanding this week, you should try to answer the following questions:

  • How are form values sent to the URL in the form action?
  • How can PHP access form values?
  • How do you interpolate a variable into a string in PHP?
  • What sanitization does PHP do automatically?
  • When using PHP's mysqli_connect() to connect to MySQL, what gets returned?
  • What does mysqli_fetch_assoc() do besides return a row of data?
  • What happens if a loop's condition is never met?
  • Why is it a good practice to use "LIMIT 1" when updating a MySQL record?
  • What types of problems could arise if all validations were removed?
  • Why should form attributes still be assigned values if a form has errors?
  • What potential problem would the last name "D'Angelo" create for the database?

If you have any particular questions about the assignment or the feedback, email us at universitysupport@codepath.com.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant