O primeiro ponto é que, se você não sabe nada mesmo, vai demorar um tempo pra você chegar no nível de conseguir fazer essa plataforma que você descreveu.
Porém, ter um projeto em mente é uma ótima maneira de manter o foco durante o aprendizado.
O que eu te sugeriria é inicialmente diminuir um pouco essa lista de features pro seu projeto inicial, e tentar fazer apenas um CRUD, que seria esse sistema de cadastro, leitura, alteração e exclusão de registros
Sobre linguagens, eu recomendaria começar com Python pro Backend, que é uma linguagem muito usada atualmente e fácil de aprender. Em empresas mais modernas PHP já não é mais tão usado, a demanda de PHP atual acho que se mantém muito por conta do Wordpress.
Pro Frontend, HTML, CSS e Javascript é o trio básico.
Você vai perceber que a linguagem não é a única coisa que será necessária aprender pra realmente conseguir construir esse site. Você vai precisar também de bibliotecas e principalmente frameworks pra te ajudar nessa tarefa, e será necessário estudar como eles funcionam.
Para framework, eu te indicaria tentar iniciar com Django, que é um framework em Python pra construção de sistemas web, que inclui todas as principais ferramentas que você vai precisar de forma bem integrada.
Mas a verdade é que há uma infinidade de possibilidades, essas são só minhas sugestões baseadas na minha experiência, com foco em tentar chegar a um primeiro resultado pro seu projeto da forma mais fácil.