@velocity911: Ja das ist in Python und mit Flask umsetzbar.
Wie die Auswertung im Detail passiert hängt vom Datenbankentwurf ab, und der wiederum davon was Umfragen ganz konkret bedeuten. Also nur Ja/Nein-Fragen? Gibt es Benutzer und werden deren individuellen Antworten gespeichert oder kann jeder ohne Anmeldung etwas wählen?
Die Aufbereitung der Auswertung kann man auch sehr verschieden umsetzen. Durch einfache Balken aus Unicode-Blockzeichen, über Tabellenzellen oder <div>-Elemente mit Hintergrundfarbe und einer Breite die in Prozent angegeben wird, über Grafiken die dynamisch auf dem Server generiert und ausgeliefert werden, bis zu JavaScript-Bibliotheken die die Diagramme erst im Browser zeichnen.
SQL-Server aufsetzen wäre nicht mein erster Schritt. Den ersten Prototypen kann man auch mit SQLite erstellen. Für eine SQL-Datenbank würde ich auf die Flask-SQLAlchemy-Erweiterung setzen. Dann braucht man sich auch nicht mit SQL-Abfragen als Zeichenketten herumschlagen.
Ich würde als erstes das Tutorial in der Python-Dokumentation durcharbeiten. Das bietet einen Rundgang durch die Sprache und wenn man schon eine andere Sprache kennt, sieht man Gemeinsamkeiten und Unterschiede.
Dann das Flask-Tutorial. Da lernt man das Grundgerüst für eine Webanwendung mit Flask kennen und auch wie man ”manuell” mit einer SQL-Datenbank arbeitet. Die verwenden dort auch SQLite. Man braucht dafür keinen Server und das `sqlite3`-Modul ist bereits Bestandteil der Standardbibliothek von Python.
Dann kannst Du Dir die Flask-SQLAlchemy-Dokumentation vornehmen um zu lernen wie man das SQL los wird und Objekte auf Datenbanktabellen abbildet.
Konkret für Deine Anwendung müsstest Du den Datenbankentwurf machen. Also die Entitäten, ihre Eigenschaften, und wie die Entitäten miteinander in Beziehung stehen. Das hängt davon ab was für Anfragen an die Daten gestellt werden. Wenn es beispielsweise konkrete Benutzer gibt, dann braucht man dafür eine Entität im Datenbankentwurf. Wenn es nur Ja/Nein(/Vielleicht)-Fragen gibt, dann reicht eine Entität für Umfragen aus. Wenn es pro Umfrage individuelle Auswahlmöglichkeiten gibt, dann für Antwortmöglichkeiten eine Entität einführen. Wie die mit der Umfrage-Entität in Beziehung steht, hängt davon ab ob eine konkrete Auswahlmöglichkeiten später noch einmal geändert werden kann und wie man dabei in der Programmlogik damit umgehen will. Also ob es okay ist wenn sich dadurch der Text bei allen bestehenden Umfragen ändert. Oder ob es okay ist mehrfach den gleichen Text in der Datenbank zu haben. Oder ob man in der Programmlogik sicherstellt, das Änderungen nicht zu doppelten Einträgen führen.
Die Verwendung der Anwendung und damit der Datenbank sollten möglichst am Anfang festgelegt werden. Datenbankentwürfe nachträglich zu ändern kann Probleme mit sich bringen oder zumindest aufwändig sein. Weil man dabei ja immer die bereits bestehenden Daten konvertieren muss.
Für die Clientseite würde ich ein CSS-Rahmenwerk wie Bootstrap verwenden.
Um Sirius3 zweiten Satz noch mal zu unterstreichen: Ganz am Anfang solltest Du 100 Mal: „Es heisst Python und nicht Phyton“ an die Tafel schreiben.
