# PHPMailer Installation für Frida & Fred Kontaktformular

## Schritt 1: PHPMailer herunterladen

### Option A: Mit Composer (empfohlen, wenn verfügbar)
```bash
composer require phpmailer/phpmailer
```

### Option B: Manueller Download (für klassisches Webhosting)

1. Gehe zu: https://github.com/PHPMailer/PHPMailer/releases/latest
2. Lade die ZIP-Datei herunter
3. Entpacke die Datei
4. Kopiere den Ordner `src` aus dem PHPMailer-Verzeichnis
5. Benenne `src` in `PHPMailer` um
6. Lade den `PHPMailer` Ordner auf deinen Server in das Verzeichnis `/vendor/phpmailer/phpmailer/`

Die Struktur sollte so aussehen:
```
Webseite/
├── vendor/
│   └── phpmailer/
│       └── phpmailer/
│           └── src/
│               ├── PHPMailer.php
│               ├── SMTP.php
│               ├── Exception.php
│               └── ...
├── send-mail.php
├── index.html
└── ...
```

### Option C: Manuelle Einbindung (ohne Composer)

Falls du keinen `vendor` Ordner erstellen möchtest, kannst du PHPMailer auch direkt einbinden:

1. Lade die drei Hauptdateien herunter:
   - PHPMailer.php
   - SMTP.php
   - Exception.php

2. Speichere sie in einem Ordner `phpmailer/` im Hauptverzeichnis

3. Ändere in `send-mail.php` die Zeile:
   ```php
   require 'vendor/autoload.php';
   ```
   zu:
   ```php
   require 'phpmailer/Exception.php';
   require 'phpmailer/PHPMailer.php';
   require 'phpmailer/SMTP.php';
   
   use PHPMailer\PHPMailer\PHPMailer;
   use PHPMailer\PHPMailer\SMTP;
   use PHPMailer\PHPMailer\Exception;
   ```

## Schritt 2: SMTP-Zugangsdaten konfigurieren

Öffne `send-mail.php` und trage die SMTP-Daten ein:

```php
define('SMTP_HOST', 'mail.webfarben.net');  // SMTP-Server von webfarben.net
define('SMTP_PORT', 587);                     // Port für TLS (oder 465 für SSL)
define('SMTP_USERNAME', 'frida@webfarben.net');
define('SMTP_PASSWORD', 'DEIN_PASSWORT_HIER');
define('SMTP_SECURE', 'tls');                 // 'tls' oder 'ssl'
```

### Wichtige Hinweise zu SMTP-Einstellungen:

- **SMTP_HOST**: Meist `mail.domain.de` oder `smtp.domain.de`
- **SMTP_PORT**: 
  - Port 587 für TLS (empfohlen)
  - Port 465 für SSL
  - Port 25 (oft blockiert bei Hosting-Providern)
- **SMTP_SECURE**: 
  - `tls` für Port 587
  - `ssl` für Port 465

Wenn du die SMTP-Daten nicht kennst, frage deinen Hosting-Provider (webfarben.net) nach:
- SMTP-Server-Adresse
- SMTP-Port
- Verschlüsselungsmethode (TLS/SSL)

## Schritt 3: Testen

1. Lade alle Dateien auf deinen Server hoch
2. Öffne deine Website im Browser
3. Fülle das Kontaktformular aus
4. Sende eine Test-Nachricht
5. Prüfe, ob die E-Mail bei `frida@webfarben.net` ankommt

## Troubleshooting

### Fehler: "Could not authenticate"
- Überprüfe Benutzername und Passwort
- Stelle sicher, dass SMTP-Auth aktiviert ist

### Fehler: "Connection refused"
- Prüfe SMTP_HOST und SMTP_PORT
- Eventuell ist Port 587 oder 465 bei deinem Provider blockiert
- Kontaktiere deinen Hosting-Support

### Fehler: "vendor/autoload.php not found"
- PHPMailer wurde nicht korrekt installiert
- Siehe Option C für manuelle Einbindung

### Debug-Modus aktivieren

Falls du Probleme hast, aktiviere den Debug-Modus in `send-mail.php`:
```php
$mail->SMTPDebug  = 2;  // Ändere von 0 auf 2
```

**Wichtig**: Deaktiviere den Debug-Modus wieder, bevor die Website live geht!

## Sicherheit

- Speichere das SMTP-Passwort niemals in einem öffentlichen Repository
- Verwende starke Passwörter für das E-Mail-Konto
- Rate-Limiting ist bereits aktiviert (1 Nachricht/Minute)
- Honeypot-Spam-Schutz ist implementiert

## Support

Bei Fragen oder Problemen:
1. Prüfe die PHP-Error-Logs auf dem Server
2. Teste mit Debug-Modus (siehe oben)
3. Kontaktiere deinen Hosting-Provider für SMTP-Unterstützung
