Mock-CMS not deleting authors from database

This is a good reason to start learning about debugging right now.
First step here will be localize the problem. That means you need to know which part of your code doesn’t work as supposed. To find that, you can use breakpoints.

These lines should delete author from database:

$sql = 'DELETE FROM author WHERE id = :id';
$s = $pdo->prepare($sql);

You need to check if they work, in other words:

  1. these lines are executed when you click “Delete” button;
  2. they produce correct SQL-query.

Try to add this right after preparing the sql:

die($_POST['id']);

This will force your script to print contents of $_POST[‘id’] and terminate execution immediately on this line.
So, that means when you’ll click “Delete” button next time you should see blank page with only author ID printed. If you don’t see it, go one level up and insert die('foobar'); right after:

if(isset($_POST['action']) and $_POST['action'] == 'Delete') {

Then check if it prints something. Your main goal is to research how your script execution flows and find a place where it fails.

I hope you got the idea. Good luck.