| Server IP : 202.61.199.114 / Your IP : 216.73.217.139 Web Server : nginx/1.22.1 System : Linux de.arni-solutions.de 6.1.0-49-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64 User : web20 ( 1018) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/clients/client2/arni-solutions.de/web/test/ |
Upload File : |
# Testsystem mit Textdateien
Dieses Paket ist ein kleines universelles PHP-Testsystem ohne Datenbank.
## Funktionen
- Login für Teilnehmer über Name + E-Mail
- mehrere Tests möglich
- Single Choice und Multiple Choice
- Antworten erneut öffnen und bearbeiten
- Speicherung in Textdateien / JSON-Dateien
- Adminbereich mit XML-Import für neue Tests
- Übersicht aller gespeicherten Teilnahmen
## Wichtiger Hinweis zur Identifizierung per E-Mail
Die Identifizierung läuft hier absichtlich simpel über Name + E-Mail.
Das ist praktisch, aber **nicht fälschungssicher**. Wer dieselbe E-Mail kennt, könnte denselben Datensatz öffnen.
Wenn du das später absichern willst, wäre ein Magic-Link per E-Mail der nächste sinnvolle Schritt.
## Ordnerstruktur
- `data/tests/*.json` speichert importierte Tests
- `data/submissions/*.json` speichert Antworten pro Test und E-Mail
- `data/users.txt` protokolliert Logins als JSON-Zeilen
- `data/uploads/*.xml` sichert importierte XML-Dateien
## Installation
1. ZIP auf den Server hochladen und entpacken
2. in `config/config.php` das Admin-Passwort ändern
3. sicherstellen, dass der Webserver Schreibrechte auf `data/` und Unterordner hat
### Rechte setzen auf Debian / Ubuntu
```bash
cd /var/www/html/freunde-test-v2-textdateien
chown -R www-data:www-data data
find data -type d -exec chmod 775 {} \;
find data -type f -exec chmod 664 {} \;
```
## Start
- Frontend: `index.php`
- Admin Login: `admin/index.php`
## Admin XML Import
Im Paket liegt eine Beispiel-Datei:
- `sample_test.xml`
Die kannst du im Adminbereich direkt importieren.
## Bootstrap
Das Frontend lädt Bootstrap 5 per CDN.
## PHP Voraussetzung
- PHP 7.4 oder neuer
- `simplexml` sollte aktiviert sein
## Dateiformat der Testdefinition
Jeder importierte Test wird als JSON-Datei gespeichert.
Die XML-Datei dient nur als Importformat für den Admin.
## Beispiel-Ideen für weitere Tests
- WG Katastrophen Level
- Festival Überlebens Test
- Welcher Urlaubstyp bist du
- Wie gefährlich bist du in einer Zombie Apokalypse
- Welcher Mensch bist du auf einem Saufabend