Попытайтесь наложить знание о каком-либо шаблоне на реальные объекты или процессы. И не только в программировании. Тогда вы легко их запомните и будете легче определять - надо ли в их применять в каком-нибудь конкретном случае.
В первой строке замените $db_table на $user_name. Предварительно инициализировав эту переменную правильным логином для доступа к БД. И все сразу заработает :-)
А зачем вам именно такое?
enctype=multipart/form-data говорит серверу, чтобы он не занимался кодировкой или перекодировкой полученной из формы(!) информации, а принимал ее как есть.
Если получаете данные массивом, то и работайте с ними как с массивом. Особо нового ничего не придумать. Но входные данные проверять на легитимность - обязательно.
1. Если вы отправляете запрос аяксом, лучше убрать атрибут action в форме, прописав его в аяксовых атрибутах.
2. Форма при сабмите должна возвращать false. Тогда не будет перехода на новую страницу.
Наплюйте. Если при постановке задачи вас не ограничивали каким-либо движком, то претензии вашего заказчика непонятны. Я тоже могу заказать пиццу, а потом капризничать, что мне привезли ее на мотороллере, а не на Бентли.