Ранняя карьераДмитрий родился в городе Унеча, что в Брянской области. Начала заниматься футболом в 9-летнем возрасте в местной спортивной школе. В 15 лет был приглашен на просмотр в волгоградский «Ротор». В начале 2000-х перешёл в санкт-петербургскую спортивную школу «Смена».
«Динамо» БрянскКарьера в Санкт-Петербурге у футболиста не сложилась и он вернулся в Брянск, где стал играть за одну из любительских команд, выступающую в чемпионате Брянской области. После матча первенства его команды с «молодежкой» брянского «Динамо», Дмитрию было предложено попробовать свои силы в этом клубе. Игрок отправился на просмотр, после чего с ним был заключен контракт.
19-летний Санников сразу вписался в команду Виктора Васильевича Зимина, сыграв в своем дебютном сезоне на профессиональном уровне 34 матча, забив в них три мяча. «Динамо» по итогам сезона заняло четвертое место. Смена главного тренера не помешала футболисту постоянно играть в основном составе. По итогам сезона 2003 команда заняла второе место, уступив «Орлу», набравшему 83 очка, лишь по разнице голов. Так как игравшее в первом дивизионе питерское «Динамо» было расформировано, брянский коллектив занял его место. В сезоне 2003 Дмитрий сыграл за брянчан 38 матчей, в которых забил два мяча.
В период с 2004 по 2008 год (5 сезонов), Дмитрий выступал в составе «Динамо» в первом дивизионе. В кубке России 2006/2007 Санников вместе с командой дошел до полуфинала, пройдя такие команды, как: «Лобня-Алла» (Лобня), «Шинник» (Ярославль), «Торпедо» (Москва) и «Ростов» (Ростов-на-Дону). В полуфинале «Динамо» по сумме двух уступило «Москве» (1:1,0:1). По завершении розыгрыша кубка все футболисты команды были награждены званиями мастеров спорта. Всего в первом дивизионе в составе «Динамо» Санников сыграл в 192 матчах, отметившись в них 14 забитыми мячами.
«Волгарь-Газпром-2»В конце 2008 года Дмитрий покинул вылетевшее во второй дивизион брянское «Динамо», занявшее по итогам сезона 2008 21 место. В начале 2009 года контракт с футболистом заключил астраханский «Волгарь-Газпром-2». Футболист быстро закрепился в команде, став ее основным игроком. В середине сезона 2010 он покинул команду, перейдя в белгородский «Салют». Всего в составе команды из Астрахани Дмитрий сыграл 53 матча, забив в них четыре мяча.
«Салют» БелгородЛетом 2010 года Санников стал игроком «Салюта». В сезоне 2010 сыграл за команду в 15 матчах. По итогам чемпионата белгородская команда вылетела во второй дивизион. Зимой было принято решение расторгнуть контракт с футболистом.
«Авангард» КурскПолгода Дмитрий поддерживал форму в одной из брянских любительских команд. В августе 2011 года Санников подписал контракт с курским «Авангардом». Дебютировал в составе команды 5 августа, в матче с подольским «Витязем» (4:0). Футболист вышел на поле в стартовом составе и был заменен на 85 минуте игры. По окончании сезона 2011/12 покинул «Авангард».
Возвращение в «Динамо» БрянскВ июле 2012 года вернулся в брянское «Динамо».