84 Einträge gefunden
# 🧠 IQ Test Portal V2 - Komplett neu ## 📋 Überblick Professionelles IQ-Test Portal mit Standard und Premium aktuell 132 Aufgaben. Komplett neu programmiert ohne die Fehler der alten Version. --- ## ✨ Features ### Für Benutzer: - ✅ **Standard Test:** 25 Fragen, kostenlos - ✅ **Premium Test:** 60 Fragen, konfigurierbar - ✅ Registrierung & Login - ✅ Dashboard mit allen Ergebnissen - ✅ IQ-Berechnung nach Standardformel - ✅ Zertifikat für jeden Test (PDF-druckbar) - ✅ Kategorien: Unterdurchschnitt (50-89), Durchschnitt (90-120), Hochbegabt (121+) - ✅ Keine Zeitlimits ### Für Admins: - ✅ **Fragen hinzufügen/löschen** (Standard & Premium) - ✅ Premium-Status manuell vergeben - ✅ Zahlungen bestätigen - ✅ Premium-Preis ändern (live) - ✅ PayPal Email ändern (live) - ✅ Benutzer-Verwaltung - ✅ Statistiken (User, Tests, Umsatz, Fragen-Count) ### Premium-System: - ✅ Preis durch Admin einstellbar (auch während Betrieb) - ✅ PayPal Email-basiert (keine API) - ✅ Einmalige Zahlung - ✅ Manuelle Freischaltung durch Admin - ✅ Oder kostenlos (Preis auf 0 setzen) --- ## 💻 Systemanforderungen - **PHP:** 8.0+ - **MySQL:** 5.7+ - **Extensions:** PDO, PDO_MySQL --- ## 📥 Installation ### Schritt 1: Dateien hochladen ```bash Alle Dateien in Webverzeichnis hochladen ``` ### Schritt 2: install.php aufrufen ``` https://ihre-domain.de/install.php ``` ### Schritt 3: Datenbank eingeben - DB Host: `localhost` - DB Name: `iq_test` - DB User: `db_user` - DB Password: `db_passwort` ### Schritt 4: Admin erstellen - Username: `admin` - Email: `admin@domain.de` - Password: `sicher123` ### Schritt 5: Premium konfigurieren **Option A - Kostenpflichtig:** - Premium-Preis: `9.99` (oder beliebig) - PayPal Email: `ihre@paypal.de` **Option B - Kostenlos:** - Premium-Preis: `0` - PayPal Email: leer lassen ### Schritt 6: Installieren - install.php löscht sich selbst - 4 Tabellen erstellt - Beispielfragen hinzugefügt --- ## 🗄️ Datenbank ### Tabellen: **iq_users:** - id, username, email, password_hash - is_admin, is_premium, premium_until - created_at **iq_questions:** - id, question, option_a, option_b, option_c, option_d - correct_answer (a/b/c/d) - question_type (standard/premium) - difficulty, created_at **iq_results:** - id, user_id, test_type (standard/premium) - score, total_questions, iq_score - created_at **iq_payments:** - id, user_id, amount, payment_email - status (pending/completed) - created_at --- ## 📊 IQ-Berechnung ### Formel: ```php Prozent = (Richtige / Gesamt) × 100 95%+ → IQ 145 90%+ → IQ 135 85%+ → IQ 125 80%+ → IQ 120 75%+ → IQ 115 70%+ → IQ 110 65%+ → IQ 105 60%+ → IQ 100 55%+ → IQ 95 50%+ → IQ 90 45%+ → IQ 85 40%+ → IQ 80 ... ``` ### Kategorien: | IQ | Kategorie | Symbol | Farbe | |----|-----------|--------|-------| | 121+ | Hochbegabt | 🧠 | Grün | | 90-120 | Durchschnitt | 📊 | Blau | | 50-89 | Unterdurchschnitt | 📉 | Orange | --- ## 🎯 Benutzung ### Als Besucher: 1. **Startseite:** Statistiken sehen 2. **Registrieren:** Account erstellen 3. **Einloggen** ### Als User: 1. **Dashboard öffnen** 2. **Standard Test starten:** 25 Fragen kostenlos 3. **Ergebnis sehen:** IQ-Score + Kategorie 4. **Zertifikat:** Drucken oder als PDF speichern 5. **Premium Test:** Freischalten für 60 Fragen ### Premium freischalten: **Wenn kostenpflichtig:** 1. Dashboard → Premium Test 2. \"Premium freischalten\" 3. Zahlungsanweisung lesen 4. €X,XX an PayPal Email überweisen 5. Verwendungszweck: `Premium-[USERID]` 6. Zahlung bestätigen 7. Admin aktiviert Premium **Wenn kostenlos:** 1. Dashboard → Premium Test 2. Sofort verfügbar! ### Als Admin: 1. **Admin-Panel öffnen** 2. **Fragen verwalten:** - Neue Frage hinzufügen - Typ wählen (Standard/Premium) - Richtige Antwort markieren - Min. 25 Standard + 60 Premium für Tests 3. **Zahlungen bestätigen:** - Wartende Zahlungen sehen - PayPal prüfen - Bestätigen → Premium wird aktiviert 4. **Einstellungen:** - Preis ändern (sofort aktiv) - PayPal Email ändern 5. **Benutzer verwalten:** - Premium manuell geben/nehmen - Übersicht aller User --- ## 📁 Dateien (13 PHP-Dateien) **Core:** - `config.php` - Konfiguration (von install.php) - `functions.php` - Hilfsfunktionen - `install.php` - Installation - `style.css` - Design **Auth:** - `login.php` - Login - `logout.php` - Logout - `register.php` - Registrierung **Main:** - `index.php` - Startseite - `dashboard.php` - User-Dashboard - `test.php` - Test durchführen - `result.php` - Ergebnis anzeigen - `certificate.php` - Zertifikat **Payment:** - `payment.php` - Premium freischalten **Admin:** - `admin.php` - Admin-Panel --- ## ⚙️ Konfiguration ### config.php: ```php define(\"DB_HOST\", \"localhost\"); define(\"DB_NAME\", \"iq_test\"); define(\"DB_USER\", \"user\"); define(\"DB_PASS\", \"pass\"); define(\"DB_PREFIX\", \"iq_\"); define(\"SITE_NAME\", \"IQ Test Portal\"); define(\"PREMIUM_PRICE\", 9.99); // Admin kann ändern! define(\"PAYPAL_EMAIL\", \"pay@pal.de\"); // Admin kann ändern! ``` ### Preis/Email ändern: **Im Admin-Panel:** 1. Einstellungen-Bereich 2. Neuen Preis eingeben 3. Neue PayPal Email (optional) 4. Speichern 5. **Änderung sofort aktiv!** --- ## 🧠 Test-System ### Standard Test (25 Fragen): - Kostenlos für alle - 25 zufällige Fragen aus \"standard\" - Keine Zeit begrenzung - IQ-Berechnung - Zertifikat ### Premium Test (60 Fragen): - Nur für Premium-User - 60 Fragen (Standard + Premium gemischt) - Erweiterte Fragen - Detailliertes Zertifikat - Wiederholbar ### Fragen hinzufügen: **Admin-Panel → Fragen verwalten:** 1. \"+ Neue Frage hinzufügen\" klicken 2. **Frage eingeben:** ``` Beispiel: \"Was ist 15 + 27?\" ``` 3. **4 Antworten:** - A: 40 - B: 42 - C: 44 - D: 46 4. **Richtige Antwort:** B 5. **Typ wählen:** - 📊 Standard (für beide Tests) - ⭐ Premium (nur Premium Test) 6. **Hinzufügen** **Wichtig:** - Min. 25 Standard-Fragen für Standard Test - Min. 60 Fragen gesamt für Premium Test --- ## 💰 Payment-System ### Email-basiert (kein API): **User-Seite:** 1. Premium-Preis sehen 2. Zahlungsanweisung: - Überweise €X,XX an PayPal-Email - Verwendungszweck: Premium-[ID] 3. Eigene PayPal Email eingeben 4. \"Zahlung bestätigen\" 5. Status: Pending **Admin-Seite:** 1. PayPal Account prüfen 2. Zahlung eingegangen? 3. Admin-Panel → Wartende Zahlungen 4. \"✓ Bestätigen\" klicken 5. Premium wird aktiviert 6. User kann Premium Test starten **Vorteile:** - Kein PayPal API nötig - Keine Sandbox/Live Umschaltung - Einfach - Sicher (manuell geprüft) --- ## 📜 Zertifikat ### Features: - **Druckbar:** Browser-Druckfunktion - **PDF-fähig:** Als PDF speichern - **Professionell:** Design mit Rahmen - **Informationen:** - Username - IQ-Score (groß, farbig) - Kategorie - Punktzahl (X / Y) - Test-Typ (Standard/Premium) - Datum - Zertifikat-ID (IQ-000001) ### Drucken: 1. Ergebnis-Seite → \"📜 Zertifikat anzeigen\" 2. \"🖨️ Drucken / PDF speichern\" 3. Browser-Druckdialog 4. \"Als PDF speichern\" wählen 5. Fertig! --- ## 🔧 Admin-Funktionen ### Statistiken: - Anzahl Benutzer - Tests absolviert - Umsatz (€) - Wartende Zahlungen ### Einstellungen ändern: **Premium-Preis:** ``` Aktuell: €9.99 Neu: €19.99 (oder 0 für kostenlos) → Speichern → Sofort aktiv! ``` **PayPal Email:** ``` Aktuell: alt@paypal.de Neu: neu@paypal.de → Speichern → Sofort aktiv! ``` ### Fragen-Verwaltung: **Übersicht:** - 📊 Standard: X Fragen - ⭐ Premium: Y Fragen **Neue Frage:** - Formular ausklappen - Alle Felder ausfüllen - Typ wählen - Hinzufügen **Frage löschen:** - Liste durchsuchen - 🗑️ klicken - Bestätigen ### Benutzer-Verwaltung: **Tabelle:** - ID, Username, Email - Premium-Status (⭐ oder ❌) - Admin-Status (⚙️) - Registrierungsdatum **Premium geben/nehmen:** - \"⭐ Premium\" Button - Togglet Status - Sofort aktiv ### Zahlungen bestätigen: **Wartende Zahlungen:** - Username - Betrag (€) - PayPal Email (von User) - Datum **Bestätigen:** 1. PayPal Account prüfen 2. Zahlung da? 3. \"✓ Bestätigen\" klicken 4. Premium aktiviert 5. Zahlung auf \"completed\" --- ## 🐛 Troubleshooting ### Problem: \"Nicht genug Fragen in der Datenbank\" **Lösung:** - Standard Test braucht min. 25 Fragen - Premium Test braucht min. 60 Fragen gesamt - Admin-Panel → Fragen hinzufügen ### Problem: Premium wird nicht aktiviert **Lösung:** - Admin muss Zahlung bestätigen - PayPal Email muss konfiguriert sein - Oder Preis auf 0 setzen (kostenlos) ### Problem: Zertifikat wird nicht gedruckt **Lösung:** - Browser-Druckdialog nutzen (Strg+P) - \"Als PDF speichern\" wählen - Nicht \"Artikel drucken\" ### Problem: config.php nicht schreibbar **Lösung:** ```bash chmod 644 config.php ``` ### Problem: Session-Fehler **Lösung:** - Cookies erlauben - Cache leeren - Inkognito-Modus testen --- ## 🔒 Sicherheit ### Implementiert: - ✅ PDO Prepared Statements (SQL Injection) - ✅ htmlspecialchars() (XSS) - ✅ password_hash() (Bcrypt) - ✅ session_regenerate_id() (Session Fixation) - ✅ Admin-Check für geschützte Bereiche - ✅ Premium-Check für Premium Test ### Empfehlungen: 1. **HTTPS verwenden** (Let's Encrypt) 2. **Starkes Admin-Passwort** 3. **Regelmäßige Backups** 4. **PHP aktuell halten** --- ## 📝 Changelog ### Version 2.0 (Aktuell - Komplett neu) **Neu:** - ✅ Komplett neu programmiert - ✅ Fragen-Verwaltung durch Admin - ✅ Preis durch Admin änderbar (live) - ✅ PayPal Email änderbar (live) - ✅ Separate Fragen für Standard/Premium - ✅ Bessere IQ-Berechnung - ✅ Professionelle Zertifikate - ✅ Saubere Code-Struktur - ✅ Keine Bugs der V1 **Gefixt:** - ✅ Alle 500 Fehler - ✅ Session-Probleme - ✅ LIMIT Bug (PHP 8.4) - ✅ CSS lesbar - ✅ Logout funktioniert - ✅ Premium-Check korrekt **Features:** - ✅ 25 Fragen Standard (kostenlos) - ✅ 60 Fragen Premium (konfigurierbar) - ✅ IQ-Kategorien (50-89, 90-120, 121+) - ✅ Statistiken für alle - ✅ Email-basiertes Payment --- ## 💡 Tipps ### Mehr Fragen hinzufügen: **Gute Fragetypen:** - Mathematik: \"Was ist 144 ÷ 12?\" - Logik: \"Welche Zahl fehlt: 2, 4, 8, 16, ?\" - Analogien: \"Apfel zu Obst wie Rose zu ...?\" - Muster: \"Was kommt als nächstes: A, C, F, J, ?\" - Worträtsel: \"Welches Wort passt nicht: Hund, Katze, Tisch, Vogel?\" **Balance:** - Leichte Fragen (40%) - Mittlere Fragen (40%) - Schwere Fragen (20%) ### Premium attraktiv machen: - Mehr Fragen (60 vs 25) - Schwierigere Fragen - Detaillierteres Zertifikat - \"Premium\" Badge ### Preisgestaltung: - **Kostenlos:** Mehr Teilnehmer - **€4.99:** Günstig, viele Käufe - **€9.99:** Standard (empfohlen) - **€19.99:** Premium-Positionierung --- ## 🎯 Best Practices ### Für Admins: 1. **Regelmäßig Fragen hinzufügen** 2. **Zahlungen zeitnah bestätigen** 3. **Statistiken im Auge behalten** 4. **Premium-Preis anpassen bei Bedarf** 5. **Backups erstellen** ### Für Betreiber: 1. **Marketing:** Social Media, SEO 2. **Content:** Blog über IQ-Tests 3. **Support:** FAQ-Seite erstellen 4. **Updates:** Regelmäßig neue Fragen --- ## 📞 Support **Bei Problemen:** 1. README durchlesen 2. Troubleshooting checken 3. PHP Error Logs prüfen 4. Admin kontaktieren --- ## 🏆 Features-Übersicht | Feature | Standard | Premium | |---------|----------|---------| | Anzahl Fragen | 25 | 60 | | Preis | Kostenlos | Konfigurierbar | | IQ-Berechnung | ✅ | ✅ | | Zertifikat | ✅ | ✅ | | Wiederholbar | ✅ | ✅ | | Zeitlimit | ❌ | ❌ | | Erweiterte Fragen | ❌ | ✅ | --- ## 🌟 Highlights **Was macht V2 besser:** 1. **🔧 Admin kann ALLES einstellen** - Preis ändern (live) - PayPal Email ändern (live) - Fragen hinzufügen/löschen - Premium manuell vergeben 2. **📊 Bessere Statistiken** - User-Count - Test-Count - Umsatz - Fragen-Count (Standard/Premium) 3. **🧠 Flexibles Fragen-System** - Standard-Fragen für beide Tests - Premium-Fragen nur für Premium - Unbegrenzt erweiterbar 4. **💰 Einfaches Payment** - Email-basiert (kein API) - Manuell bestätigt (sicher) - Oder komplett kostenlos (Preis = 0) 5. **🎨 Professionelles Design** - Moderne UI - Responsive - Lila/Pink Gradient - Lesbar --- ## 📄 Lizenz Proprietär - Alle Rechte vorbehalten --- ## 🎉 Viel Erfolg! **Version:** 2.0 **Stand:** Januar 2025 **Sprache:** Deutsch 🇩🇪 Komplett neu programmiert - ohne die Fehler der V1!
🚚 KurierExpress - Professionelles Kurierportal 📋 Überblick Komplettes Kurier- und Paketversand-System für Kleinunternehmer - wie DHL/Hermes, aber für kleine Versender. **Hauptfeatures:** - 📦 **Paketversand:** Gewicht, Maße, Wert eingeben - 💰 **Automatische Preisberechnung:** Nach Gewicht, Größe, Entfernung - 💳 **PayPal-Integration:** Sicher online bezahlen (IPN) - 📍 **Live-Tracking:** Echtzeit-Sendungsverfolgung - 📜 **Versandetikett:** Mit Tracking-Nummer - ⚙️ **Admin-Panel:** Sendungen & Preise verwalten ✨ Features im Detail Für Kunden: - ✅ **Registrierung & Login** - ✅ **Sendung erstellen:** - Absender & Empfänger-Daten - Paket-Details (Gewicht, L×B×H, Wert) - Versandoptionen (Standard/Express, Versicherung, Nachnahme) - Automatische Preisberechnung - ✅ **Online bezahlen** (PayPal mit IPN) - ✅ **Dashboard:** Alle Sendungen im Überblick - ✅ **Tracking:** Sendung verfolgen Für Admin/Kurier: - ✅ **Sendungen verwalten:** - Status ändern (Erfasst, Abgeholt, Unterwegs, Zugestellt...) - Standort angeben - Bemerkungen hinzufügen - ✅ **Preise anpassen:** - Gewichts-Staffeln - Größen-Zuschläge - Entfernungs-Zuschläge - ✅ **Statistiken:** Umsatz, offene Sendungen, etc. Öffentlich: - ✅ **Tracking ohne Login:** Tracking-Nummer eingeben - ✅ **Preisübersicht** auf Startseite 💻 Systemanforderungen - **PHP:** 8.0+ - **MySQL:** 5.7+ - **Extensions:** PDO, PDO_MySQL, cURL (für PayPal IPN) 📥 Installation Schritt 1: Dateien hochladen bash Alle Dateien in Webverzeichnis hochladen z.B. /public_html/kurier/ Schritt 2: install.php aufrufen https://ihre-domain.de/install.php Schritt 3: Datenbank eingeben - **DB Host:** `localhost` - **DB Name:** `kurier_db` - **DB User:** `db_user` - **DB Password:** `db_passwort` Schritt 4: Portal konfigurieren - **Portal-Name:** `KurierExpress` (oder eigener Name) - **Tracking-Präfix:** `KE` (wird zu KE-A1B2C3D4) - **PayPal Email:** `ihre@paypal-email.de` (für Zahlungen) Schritt 5: Admin erstellen - **Username:** `admin` - **Password:** `sicheres-passwort` Schritt 6: Installation abschließen - **5 Tabellen** werden erstellt - **Standard-Preise** werden eingefügt - install.php löscht sich selbst - **Fertig!** 🗄️ Datenbank-Struktur 5 Tabellen: **kurier_users:** - id, username, email, password_hash - firma, telefon - created_at **kurier_admin:** - id, username, password_hash - created_at **kurier_sendungen:** - id, user_id, tracking_nr - **Absender:** name, strasse, plz, ort, tel - **Empfänger:** name, strasse, plz, ort, tel - **Paket:** gewicht, laenge, breite, hoehe, inhalt, wert - **Versand:** versandart (standard/express), versicherung, nachnahme - **Zahlung:** preis, bezahlt, bezahlt_am, paypal_txn_id - **Status:** erfasst, bezahlt, abgeholt, unterwegs, depot, zustellung, zugestellt, problem - created_at, updated_at **kurier_status_historie:** - id, sendung_id, status, bemerkung, standort, foto - created_at **kurier_preise:** - id, typ (gewicht/groesse/entfernung), von, bis, preis, beschreibung, aktiv 💰 Preissystem Automatische Berechnung nach: **1. Gewicht:** Bis 2 kg → 5,99 € 2-5 kg → 8,99 € 5-10 kg → 12,99 € 10-20 kg → 19,99 € 20-31,5 kg → 29,99 € **2. Größenzuschlag (längste Kante):** Bis 60 cm → +0 € 60-120 cm → +5 € 120-200 cm → +10 € **3. Entfernungszuschlag (PLZ-basiert):** 0-10 km → +3 € 10-50 km → +6 € 50-150 km → +10 € 150-500 km → +20 € **4. Zusatzoptionen:** Express → +10 € Versicherung → +5 € (bis 500€ Warenwert) **Beispielrechnung:** - Paket 8kg, 80×40×30cm, 150km Entfernung, Express - Gewicht: 12,99€ (5-10kg) - Größe: +5€ (60-120cm) - Entfernung: +10€ (50-150km) - Express: +10€ - **Gesamt: 37,99€** 📦 Sendung erstellen (Kunde) Schritt 1: Daten eingeben **Absender:** - Name/Firma - Straße & Hausnummer - PLZ & Ort - Telefon **Empfänger:** - Name/Firma - Straße & Hausnummer - PLZ & Ort - Telefon **Paket:** - Gewicht (kg) - Maße (L×B×H in cm) - Wert (€, optional) - Inhalt (optional) **Optionen:** - Versandart (Standard/Express) - Versicherung (ja/nein) - Nachnahme (ja/nein, Betrag) Schritt 2: Preis berechnen - Click auf \"💰 Preis berechnen\" - System berechnet automatisch - Preis-Aufschlüsselung wird angezeigt Schritt 3: Sendung erstellen - Click auf \"✅ Sendung erstellen & bezahlen\" - Tracking-Nummer wird generiert - Weiterleitung zur Bezahlung Schritt 4: Bezahlen **PayPal-Button:** - Click auf \"Jetzt mit PayPal bezahlen\" - PayPal öffnet sich - Zahlung durchführen - Automatische Rückmeldung via IPN **Nach Zahlung:** - Status: \"Bezahlt\" - Sendung ist aktiv - Tracking verfügbar 📍 Tracking-System Öffentliches Tracking (ohne Login): 1. **tracking.php** aufrufen 2. **Tracking-Nummer eingeben:** z.B. KE-A1B2C3D4 3. **Sendungsstatus sehen:** - Aktuelle Position - Absender & Empfänger - Paket-Details - Vollständiger Verlauf Status-Historie: ✅ Zugestellt (25.01.2026 14:30 Uhr) 📍 Empfängeradresse Paket wurde zugestellt 🚛 Zur Zustellung (25.01.2026 08:00 Uhr) 📍 Depot München Fahrer ist unterwegs 🏢 Im Depot (24.01.2026 18:00 Uhr) 📍 Depot München Paket ist im Depot angekommen 🛣️ Unterwegs (24.01.2026 10:00 Uhr) 📍 Autobahn A8 Paket ist unterwegs 🚚 Abgeholt (24.01.2026 09:00 Uhr) 📍 Absenderadresse Paket wurde abgeholt ✅ Bezahlt (23.01.2026 16:30 Uhr) Zahlung via PayPal erhalten 📦 Erfasst (23.01.2026 16:25 Uhr) Sendung wurde erfasst ⚙️ Admin-Panel Login: URL: /admin-login.php Username: admin (bei Installation festgelegt) Password: (bei Installation festgelegt) Funktionen: **1. Dashboard:** - Statistiken (Sendungen, Offen, Unbezahlt, Umsatz) - Schnellzugriff **2. Sendungen verwalten:** **Filter:** - Alle - Offen (nicht zugestellt/problem) - Unbezahlt **Pro Sendung:** - Tracking-Nr - Kunde - Route (Von → Nach) - Status - Bezahlt (✅/❌) - Preis - Erstellt am **Status ändern:** - Click auf \"✏️ Status\" - Neuen Status wählen: - 📦 Erfasst - ✅ Bezahlt - 🚚 Abgeholt - 🛣️ Unterwegs - 🏢 Im Depot - 🚛 Zur Zustellung - ✅ Zugestellt - ⚠️ Problem - Standort angeben (z.B. \"Depot München\") - Bemerkung (optional) - Speichern **3. Preise anpassen:** Tabelle mit allen Preisen: - Typ (Gewicht/Größe/Entfernung) - Von/Bis-Bereich - Beschreibung - Preis (editierbar) - Status (Aktiv/Inaktiv) **Ändern:** - Preis direkt in Tabelle eingeben - 💾 Click zum Speichern - Sofort aktiv! 💳 PayPal-Integration Setup: **1. PayPal Business Account:** - Erstellen auf paypal.com - Email notieren **2. IPN aktivieren:** - PayPal Dashboard → Einstellungen → Website-Zahlungen - IPN-Benachrichtigungen → Ein - IPN-URL: `https://ihre-domain.de/paypal-ipn.php` **3. Portal konfigurieren:** - Bei Installation PayPal Email eingeben - ODER manuell in config.php ändern Ablauf: 1. **Kunde erstellt Sendung** 2. **Preis wird berechnet** 3. **Kunde click \"Mit PayPal bezahlen\"** 4. **PayPal öffnet sich** (mit vorausgefüllten Daten) 5. **Kunde bezahlt** 6. **PayPal sendet IPN an Server** 7. **paypal-ipn.php verarbeitet:** - Prüft Zahlung - Setzt `bezahlt = 1` - Ändert Status auf \"bezahlt\" - Fügt Historie hinzu 8. **Sendung ist aktiv** Sicherheit: - IPN-Verifikation mit PayPal-Server - Transaction-ID wird gespeichert - Doppel-Zahlungen verhindert 📁 Dateistruktur kurier-portal-v2/ │ ├── config.php Konfiguration (von install.php) ├── functions.php Hilfsfunktionen ├── install.php Installation ├── style.css Design (Lila/Pink Gradient) │ ├── index.php Startseite ├── login.php Login & Registrierung ├── logout.php Logout ├── dashboard.php Kunden-Dashboard ├── neue-sendung.php Sendung erstellen (HERZSTÜCK!) ├── bezahlen.php PayPal-Zahlung ├── paypal-ipn.php PayPal IPN Handler ├── tracking.php Öffentliches Tracking │ ├── admin-login.php Admin Login ├── admin-logout.php Admin Logout ├── admin.php Admin-Panel │ └── uploads/ Für Fotos (später) └── index.php Schutz 🎨 Design - **Farbschema:** Lila/Pink Gradient (wie DHL aber moderner) - **Responsive:** Mobile-optimiert - **Modern:** Cards, Badges, Timeline - **Icons:** Emojis für bessere UX 🔧 Konfiguration config.php: php define(\"DB_HOST\", \"localhost\"); define(\"DB_NAME\", \"kurier_db\"); define(\"DB_USER\", \"db_user\"); define(\"DB_PASS\", \"db_password\"); define(\"DB_PREFIX\", \"kurier_\"); define(\"SITE_NAME\", \"KurierExpress\"); define(\"TRACKING_PREFIX\", \"KE\"); define(\"PAYPAL_EMAIL\", \"pay@pal.de\"); define(\"PAYPAL_MODE\", \"live\"); **Änderbar:** - SITE_NAME: Portalnamen anpassen - TRACKING_PREFIX: z.B. \"DHL\", \"KX\", \"PKT\" - PAYPAL_EMAIL: Ihre PayPal-Email 🐛 Troubleshooting Problem: PayPal IPN funktioniert nicht **Lösung:** 1. IPN-URL in PayPal prüfen 2. cURL-Extension installiert? bash php -m | grep curl 3. Server erreichbar von außen? 4. HTTPS aktiviert? Problem: Preis wird nicht berechnet **Lösung:** 1. Alle Felder ausgefüllt? 2. Preise in DB vorhanden? (Install korrekt?) 3. Admin-Panel → Preise prüfen Problem: Tracking nicht gefunden **Lösung:** - Tracking-Nummer korrekt? (inkl. Präfix) - Sendung in DB vorhanden? - Groß-/Kleinschreibung egal Problem: Session-Fehler **Lösung:** - Cookies erlauben - Cache leeren - Inkognito-Modus testen 🔒 Sicherheit Implementiert: - ✅ **PDO Prepared Statements** (SQL Injection) - ✅ **htmlspecialchars()** (XSS) - ✅ **password_hash()** (Bcrypt) - ✅ **session_regenerate_id()** (Session Fixation) - ✅ **PayPal IPN Verification** - ✅ **HTTPS empfohlen** Empfehlungen: 1. **HTTPS verwenden** (Let's Encrypt kostenlos) 2. **Starke Passwörter** 3. **Regelmäßige Backups** 4. **PHP aktuell halten** 5. **PayPal IPN-Logs prüfen** 📊 Workflow-Beispiel Typischer Ablauf: **Tag 1 - 16:00 Uhr:** Kunde: 1. Registriert sich 2. Erstellt Sendung (München → Berlin, 5kg, Express) 3. Preis: 28,99€ 4. Bezahlt mit PayPal → Status: \"Bezahlt\" **Tag 2 - 09:00 Uhr:** Admin/Kurier: 1. Sieht neue Sendung im Admin-Panel 2. Holt Paket ab 3. Ändert Status auf \"Abgeholt\" 4. Standort: \"München Zentrum\" → Kunde sieht Update im Tracking **Tag 2 - 14:00 Uhr:** Admin/Kurier: 1. Status → \"Unterwegs\" 2. Standort: \"Autobahn A9\" **Tag 2 - 18:00 Uhr:** Admin/Kurier: 1. Status → \"Im Depot\" 2. Standort: \"Depot Berlin\" **Tag 3 - 08:00 Uhr:** Admin/Kurier: 1. Status → \"Zur Zustellung\" 2. Standort: \"Berlin Mitte\" **Tag 3 - 14:30 Uhr:** Admin/Kurier: 1. Paket zugestellt 2. Status → \"Zugestellt\" 3. Foto von Unterschrift (optional) → Kunde erhält Benachrichtigung 💡 Tipps Für Betreiber: 1. **Preise anpassen:** - Je nach Konkurrenz - Regionale Unterschiede - Spezial-Angebote 2. **Marketing:** - Social Media - Google Ads - Lokale Werbung 3. **Kundenbindung:** - Schnelle Zustellung - Gutes Tracking - Freundlicher Service Für Admins: 1. **Status regelmäßig aktualisieren** 2. **Standort immer angeben** 3. **Bei Problemen Kunde kontaktieren** 4. **Fotos bei Zustellung machen** Für Kunden: 1. **Maße genau angeben** (sonst Nachberechnung) 2. **Telefon für Rückfragen** 3. **Tracking-Nummer speichern** 🚀 Erweiterungen (Zukünftig) **Mögliche Features:** - [ ] PDF-Versandetikett generieren - [ ] QR-Code auf Etikett - [ ] SMS-Benachrichtigungen - [ ] Foto-Upload bei Zustellung - [ ] Route planen (Google Maps API) - [ ] Mehrere Kuriere verwalten - [ ] Kundenbewertungen - [ ] Rabatt-Codes - [ ] Bulk-Upload (CSV) - [ ] API für Shops 📞 Support **Bei Problemen:** 1. README durchlesen (diese Datei) 2. Troubleshooting checken 3. Datenbank prüfen 4. PayPal-IPN-Logs prüfen 🎯 Best Practices Preisgestaltung: - **Wettbewerbsfähig:** Mit DHL/Hermes vergleichen - **Transparent:** Keine versteckten Kosten - **Flexibel:** Admin kann anpassen Tracking: - **Aktuell halten:** Mindestens 2x täglich updaten - **Standort angeben:** Kunde weiß wo Paket ist - **Bemerkungen nutzen:** z.B. \"Empfänger nicht angetroffen\" Zahlung: - **Schnell:** Zahlung sofort nach IPN bestätigen - **Sicher:** PayPal-Verifizierung nutzen - **Transparent:** Kunde sieht Preis vor Zahlung 📄 Lizenz Proprietär - Alle Rechte vorbehalten 🎉 Viel Erfolg mit Ihrem Kurierportal! **Version:** 2.0 **Stand:** Januar 2026 **Sprache:** Deutsch 🇩🇪 **KOMPLETT FERTIG - PRODUKTIONSBEREIT!** 🚀 📝 Changelog Version 2.0 (Aktuell) **Features:** - ✅ Komplettes Versand-System - ✅ Gewicht, Maße, Wert-Eingabe - ✅ Automatische Preisberechnung - ✅ PayPal-Integration (IPN) - ✅ Live-Tracking - ✅ Admin-Panel - ✅ Status-Historie - ✅ Responsive Design **Technisch:** - ✅ PHP 8.0+ kompatibel - ✅ PDO Prepared Statements - ✅ Session-Sicherheit - ✅ PayPal IPN-Verifikation - ✅ Sauberer Code **ALLES FUNKTIONIERT!** 🎯
🖼️ Bildschutz - Wasserzeichen auf Bilder 📋 Überblick Professioneller Bildschutz-Service zum Hinzufügen von Wasserzeichen auf Bilder. **Features:** - 🖼️ **Alle Formate:** JPG, PNG, WEBP, GIF, BMP - 📝 **Text oder Logo:** Flexible Wasserzeichen-Typen - ⚡ **Batch-Processing:** Mehrere Bilder gleichzeitig - 🎨 **Anpassbar:** Position, Größe, Farbe, Transparenz - 📱 **Responsive:** Mobile-optimiert - 🚀 **Schnell:** Sofortige Verarbeitung ✨ Features im Detail Unterstützte Formate: | Format | Lesen | Schreiben | Transparenz | |--|-|--|-| | JPG | ✅ | ✅ | ❌ | | PNG | ✅ | ✅ | ✅ | | WEBP | ✅ | ✅ | ✅ | | GIF | ✅ | ✅ | ✅ | | BMP | ✅ | ✅ | ❌ | Wasserzeichen-Typen: **Text-Wasserzeichen:** - Eigener Text (z.B. \"© 2026 Ihr Name\") - Schriftgröße: 10-100px - Farbe: Frei wählbar - Transparenz: 0-100% **Logo-Wasserzeichen:** - Eigenes Logo hochladen - Größe: 50-500px - Position frei wählbar - Transparenz: 0-100% Positionen: - ✅ Unten Rechts (Default) - ✅ Unten Links - ✅ Oben Rechts - ✅ Oben Links - ✅ Mitte Ausgabeformate: - Original beibehalten - Konvertierung zu JPG - Konvertierung zu PNG - Konvertierung zu WEBP 💻 Technische Details Dateien: - **index.php** - Upload & Einstellungen - **process.php** - Verarbeitung (ALLE FORMATE!) - **style.css** - Cyan/Blue Gradient-Design - **protected_images/** - Output-Verzeichnis Logo: svg Cyan→Blue Gradient mit Bild-Icon und ©-Symbol - Skalierbar - Eingebettet PHP-Funktionen: php loadImage() // JPG, PNG, WEBP, GIF, BMP saveImage() // Alle Formate mit Qualität addTextWatermark() // Text mit TrueType addLogoWatermark() // Logo mit Transparenz calculatePosition() // 5 Positionen 🚀 Installation Schritt 1: Dateien hochladen bash Alle Dateien in Webverzeichnis hochladen Schritt 2: Verzeichnisse prüfen bash chmod 755 protected_images/ Schritt 3: PHP-Extensions prüfen bash php -m | grep -E \"gd|imagick\" **Benötigt:** - ✅ GD Library (für Bildverarbeitung) - ✅ PHP 8.0+ empfohlen Schritt 4: TrueType-Font (Optional) bash Für bessere Text-Qualität: Lade arial.ttf herunter und lege es im Root ab **Ohne TTF:** System-Font wird verwendet (funktioniert, aber kleiner) 📖 Benutzung Text-Wasserzeichen: 1. **Bilder hochladen** (Drag & Drop oder Klick) 2. **\"Text\" auswählen** 3. **Text eingeben** (z.B. \"© 2026 Mein Name\") 4. **Schriftgröße einstellen** (10-100px) 5. **Farbe wählen** (Farbwähler) 6. **Position wählen** (z.B. \"Unten Rechts\") 7. **Transparenz einstellen** (0-100%) 8. **\"Wasserzeichen hinzufügen\" klicken** 9. **Geschützte Bilder herunterladen** Logo-Wasserzeichen: 1. **Bilder hochladen** 2. **\"Logo\" auswählen** 3. **Logo hochladen** (PNG mit Transparenz empfohlen) 4. **Logo-Größe einstellen** (50-500px) 5. **Position wählen** 6. **Transparenz einstellen** 7. **\"Wasserzeichen hinzufügen\" klicken** 8. **Geschützte Bilder herunterladen** Batch-Processing: 1. Mehrere Bilder auswählen (Strg/Cmd + Klick) 2. Einstellungen vornehmen 3. Alle Bilder werden mit gleichen Einstellungen verarbeitet 4. Einzeln herunterladen 🎨 Design-Anpassung Farben ändern: **In style.css:** css :root { --primary: 06b6d4; /* Cyan */ --secondary: 3b82f6; /* Blue */ --gradient: linear-gradient(135deg, var(--primary), var(--secondary)); } Logo-Farben: **In index.php (SVG):** html <stop offset=\"0%\" style=\"stop-color:06b6d4\" /> <stop offset=\"100%\" style=\"stop-color:3b82f6\" /> 🐛 Troubleshooting Problem: \"Konnte Bild nicht laden\" **Lösung:** 1. **GD Library installiert?** bash apt install php-gd oder yum install php-gd 2. **PHP neu starten:** bash systemctl restart php-fpm 3. **Format unterstützt?** php <?php print_r(gd_info()); ?> Problem: WEBP nicht unterstützt **Lösung:** bash PHP mit WEBP-Support kompilieren oder apt install php-gd libwebp-dev Problem: Text zu klein **Lösung:** 1. **TTF-Font verwenden:** - arial.ttf herunterladen - In Root-Verzeichnis legen - Automatisch erkannt! 2. **Schriftgröße erhöhen** (im Frontend) Problem: Transparenz geht verloren **Lösung:** - ✅ PNG verwenden (behält Transparenz) - ✅ WEBP verwenden (behält Transparenz) - ❌ JPG verwendet (keine Transparenz möglich) Problem: Zu langsam bei vielen Bildern **Lösung:** 1. **PHP Memory erhöhen:** ini memory_limit = 512M 2. **Max Upload Size erhöhen:** ini upload_max_filesize = 50M post_max_size = 50M 3. **Bilder vorher verkleinern** 🔒 Sicherheit Implementiert: - ✅ **File-Type Validierung** - ✅ **Directory Protection** (.htaccess) - ✅ **XSS-Schutz** (htmlspecialchars) - ✅ **Upload-Limits** Empfehlungen: 1. **HTTPS verwenden** (Let's Encrypt) 2. **Upload-Limit setzen** (max 10MB pro Bild) 3. **Rate-Limiting** (max X Uploads/Stunde) 4. **Temp-Files löschen** (automatisch nach 24h) .htaccess für protected_images/: apache <Files *.php> deny from all </Files> Order Deny,Allow Deny from all Allow from all 📊 Performance Benchmarks (PHP 8.2, 4GB RAM): | Bildgröße | Format | Verarbeitung | |--|--|--| | 1 MB | JPG | ~0.3s | | 2 MB | PNG | ~0.5s | | 3 MB | WEBP | ~0.4s | | 5 MB | GIF | ~1.2s | **Batch (10 Bilder à 2MB):** ~5-8 Sekunden Optimierung: php // In process.php anpassen: imagejpeg($image, $path, 85); // Qualität: 95→85 (schneller) imagepng($image, $path, 6); // Kompression: 9→6 (schneller) 💡 Tipps & Tricks Beste Ergebnisse: 1. **PNG für Logos** (Transparenz!) 2. **Weiße Schrift mit 80% Opacity** (gut sichtbar) 3. **Logo-Größe ~10-15% der Bildgröße** 4. **Position \"Unten Rechts\"** (Standard) Logo vorbereiten: bash Empfohlene Logo-Eigenschaften: Format: PNG Größe: 500x500px (quadratisch) Hintergrund: Transparent Farbe: Weiß oder Hell Batch-Workflow: 1. Alle Bilder in Ordner sammeln 2. Alle hochladen 3. Einstellungen einmal vornehmen 4. Alle verarbeiten 5. ZIP-Download (TODO: Feature) 🚀 Erweiterungen (Zukünftig) **Mögliche Features:** - [ ] ZIP-Download (alle geschützten Bilder) - [ ] Vorschau vor Verarbeitung - [ ] Wasserzeichen-Templates speichern - [ ] Mehrere Wasserzeichen pro Bild - [ ] Gekachelte Wasserzeichen - [ ] Metadata entfernen (EXIF) - [ ] Automatische Größenanpassung - [ ] Cloud-Upload (Dropbox, Google Drive) - [ ] API für Entwickler 🎨 Logo als separate Datei **logo.svg erstellen:** svg <svg width=\"200\" height=\"200\" xmlns=\"http://www.w3.org/2000/svg\"> <defs> <linearGradient id=\"grad\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\"> <stop offset=\"0%\" style=\"stop-color:06b6d4\" /> <stop offset=\"100%\" style=\"stop-color:3b82f6\" /> </linearGradient> </defs> <rect x=\"40\" y=\"60\" width=\"120\" height=\"90\" rx=\"8\" fill=\"url(grad)\"/> <circle cx=\"70\" cy=\"95\" r=\"12\" fill=\"white\" opacity=\"0.8\"/> <path d=\"M 50 130 L 75 105 L 105 130 L 135 105 L 135 145 L 50 145 Z\" fill=\"white\" opacity=\"0.8\"/> <text x=\"100\" y=\"180\" font-family=\"Arial\" font-size=\"24\" fill=\"white\" text-anchor=\"middle\" font-weight=\"bold\">©</text> </svg> **Einbinden:** html <img src=\"logo.svg\" alt=\"Bildschutz\" width=\"60\" height=\"60\"> 📝 Beispiel-Workflows Fotograf: 1. Shooting-Fotos hochladen 2. Logo mit Firmenname hochladen 3. Position: Unten Rechts 4. Transparenz: 70% 5. Verarbeiten 6. An Kunden senden Designer: 1. Portfolio-Bilder schützen 2. Text: \"© 2026 Designer Name\" 3. Schriftgröße: 24px 4. Position: Unten Links 5. Transparenz: 60% 6. Auf Website hochladen E-Commerce: 1. Produktfotos hochladen 2. Text: \"Nur bei Shop.de\" 3. Position: Mitte 4. Transparenz: 40% (gut sichtbar) 5. In Shop einbinden 📞 Support **Bei Problemen:** 1. README durchlesen 2. Troubleshooting checken 3. GD Library prüfen 4. PHP Error Log checken 📄 Rechtliches Wichtig: - ✅ Nur eigene Bilder schützen - ✅ Oder mit Erlaubnis des Fotografen - ⚠️ Wasserzeichen sind **kein 100% Schutz** - ⚠️ Technisch versierte können sie entfernen Best Practice: 1. Wasserzeichen + niedrige Auflösung (Web) 2. Originale nur nach Kauf/Bezahlung 3. Wasserzeichen über wichtige Bildbereiche 4. Kombination: Text + Logo 🎯 Best Practices User Experience: 1. **Einfacher Upload** (Drag & Drop) 2. **Live-Vorschau** (TODO) 3. **Schnelle Verarbeitung** 4. **Klare Download-Buttons** Code Quality: 1. **Alle Formate unterstützt** 2. **Error-Handling** 3. **Memory-Limits beachten** 4. **Sauberer Code** 📈 Format-Support-Matrix | Format | PHP GD | ImageMagick | Empfohlen für | |--|--|-|| | JPG | ✅ | ✅ | Fotos | | PNG | ✅ | ✅ | Grafiken | | WEBP | ✅* | ✅ | Web | | GIF | ✅ | ✅ | Animationen** | | BMP | ✅ | ✅ | Legacy | \* Benötigt libwebp ** Nur erstes Frame wird verarbeitet 📝 Changelog Version 2.0 (Aktuell) **Features:** - ✅ Komplett neu in PHP 8.4 - ✅ Alle Formate: JPG, PNG, WEBP, GIF, BMP - ✅ Text & Logo-Wasserzeichen - ✅ Batch-Processing - ✅ Anpassbare Positionen - ✅ Transparenz-Kontrolle - ✅ Format-Konvertierung - ✅ Modernes Design (Cyan/Blue) - ✅ Mobile-optimiert **Technisch:** - ✅ GD Library - ✅ TrueType Font Support - ✅ Alpha-Channel Handling - ✅ Memory-effizient 🏆 Credits **Design inspiriert von:** - Watermarkly - uMark - iWatermark **Powered by:** - PHP GD Library - TrueType Fonts 📄 Lizenz Proprietär - Alle Rechte vorbehalten 🎉 Viel Erfolg mit Bildschutz! **Version:** 2.0 **Stand:** Januar 2026 **Sprache:** Deutsch 🇩🇪 **PRODUKTIONSBEREIT!** 🚀 🆘 Quick-Start bash 1. Dateien hochladen 2. Browser öffnen 3. Bild hochladen 4. Einstellungen vornehmen 5. Verarbeiten 6. Herunterladen! Für bessere Qualität: - arial.ttf herunterladen - Im Root ablegen - Fertig! **Text-Wasserzeichen:** Schnell & einfach **Logo-Wasserzeichen:** Professionell **Batch-Processing:** Effizient! 💪
🎬 Multi-Platform Video Downloader 📋 Überblick Moderner Video-Downloader für Instagram, TikTok, YouTube, Facebook, Twitter/X, Vimeo und mehr! **Features:** - 🎬 **Multi-Platform:** Instagram, TikTok, YouTube, Facebook, Twitter, Vimeo - 🚀 **Schnell & Einfach:** URL einfügen, downloaden, fertig - 🎨 **Modernes Design:** Gradient-Logo, responsive, dark theme - 📱 **Mobile-optimiert:** Funktioniert auf allen Geräten - 🔒 **Privat:** Keine Registrierung, keine Speicherung - 💯 **Kostenlos:** Unbegrenzte Downloads ✨ Features im Detail Unterstützte Plattformen: **Instagram** 📸 - Reels herunterladen - Stories herunterladen - IGTV Videos - Posts mit Videos **TikTok** 🎵 - Videos ohne Wasserzeichen - HD Qualität - Mit Audio **YouTube** 🎥 - Videos in verschiedenen Qualitäten - Audio separat (MP3) - Unterstützung für Shorts **Facebook** 📘 - Videos von Posts - Reels - Stories **Twitter/X** 🐦 - Video-Tweets - GIFs **Vimeo** 📹 - HD Videos - 4K wenn verfügbar 💻 Technische Details Dateien: - **index.php** - Hauptseite mit Logo & UI - **download.php** - Backend mit API-Integration - **style.css** - Modernes Gradient-Design - **impressum.php** - Impressum - **datenschutz.php** - Datenschutzerklärung Logo: svg Gradient-Download-Icon (Pink → Lila) - SVG-basiert - Skalierbar - Eingebettet in HTML 🚀 Installation Variante A: Ohne APIs (Basic) 1. **Dateien hochladen** 2. **Fertig!** ⚠️ **Hinweis:** Ohne APIs funktionieren nur begrenzte Plattformen. Für volle Funktionalität APIs einbinden. Variante B: Mit APIs (Empfohlen) 1. **RapidAPI Account erstellen:** - Gehe zu https://rapidapi.com - Kostenlos registrieren 2. **APIs abonnieren:** - **Instagram Downloader:** https://rapidapi.com/hub/instagram - **TikTok Downloader:** https://rapidapi.com/hub/tiktok - **Facebook Downloader:** https://rapidapi.com/hub/facebook 3. **API-Keys eintragen:** Öffne `download.php` und ersetze `YOUR_RAPIDAPI_KEY` mit deinem echten Key: php 'X-RapidAPI-Key: dein-echter-api-key-hier' **Suche nach:** `YOUR_RAPIDAPI_KEY` (3x im Code) 4. **YouTube mit yt-dlp (Optional, empfohlen):** bash Auf Server installieren: pip3 install yt-dlp Oder via apt: apt install yt-dlp Dann funktioniert YouTube-Download automatisch! 📖 Benutzung Als Besucher: 1. **Video finden** auf Instagram, TikTok, YouTube etc. 2. **Link kopieren** (Teilen → Link kopieren) 3. **DownVid öffnen** 4. **URL einfügen** in das Eingabefeld 5. **Download klicken** 6. **Video speichern** Beispiel-URLs: Instagram: https://www.instagram.com/p/ABCD123/ TikTok: https://www.tiktok.com/@user/video/123456789 YouTube: https://www.youtube.com/watch?v=dQw4w9WgXcQ Facebook: https://www.facebook.com/watch/?v=123456789 🔧 Konfiguration API-Keys eintragen: **In download.php:** php // INSTAGRAM (Zeile ~54) 'X-RapidAPI-Key: DEIN_KEY_HIER', // TIKTOK (Zeile ~80) 'X-RapidAPI-Key: DEIN_KEY_HIER', // FACEBOOK (Zeile ~145) 'X-RapidAPI-Key: DEIN_KEY_HIER', yt-dlp Pfad anpassen (falls nötig): php // Zeile ~110 in download.php $command = \"/usr/bin/yt-dlp -j --no-warnings \" . escapeshellarg($url); 🎨 Design-Anpassung Farben ändern: **In style.css:** css :root { --primary: ff006e; /* Pink */ --secondary: 8338ec; /* Lila */ --gradient: linear-gradient(135deg, var(--primary), var(--secondary)); } Logo-Farben: **In index.php (SVG):** html <stop offset=\"0%\" style=\"stop-color:ff006e\" /> <!-- Start --> <stop offset=\"100%\" style=\"stop-color:8338ec\" /> <!-- Ende --> 🐛 Troubleshooting Problem: \"Plattform nicht unterstützt\" **Lösung:** - URL korrekt? (mit https://) - Plattform wirklich unterstützt? - API-Key eingetragen? Problem: \"Download fehlgeschlagen\" **Lösung:** 1. **API-Key prüfen** (richtig eingetragen?) 2. **API-Limit erreicht?** (RapidAPI Dashboard checken) 3. **Video privat?** (nicht downloadbar) 4. **cURL aktiviert?** bash php -m | grep curl Problem: YouTube funktioniert nicht **Lösung:** 1. **yt-dlp installiert?** bash yt-dlp --version 2. **shell_exec erlaubt?** php <?php echo shell_exec('whoami'); ?> 3. **Alternative:** YouTube-API nutzen Problem: Keine Videos angezeigt **Lösung:** - Browser-Konsole öffnen (F12) - Network-Tab checken - Fehler in download.php? - PHP Error-Log prüfen 🔒 Sicherheit Implementiert: - ✅ **Input-Validierung** (URL-Check) - ✅ **HTTPS empfohlen** - ✅ **Kein Datenspeichern** - ✅ **Keine Cookies** - ✅ **escapeshellarg()** bei shell_exec Empfehlungen: 1. **HTTPS nutzen** (Let's Encrypt) 2. **Rate-Limiting** implementieren 3. **IP-Blocking** bei Missbrauch 4. **API-Keys geheim halten** 📊 API-Kosten RapidAPI Pricing (Stand 2026): **Free Plan:** - 100-500 Requests/Monat - Kostenlos - Für Tests **Basic Plan:** - ~$5-10/Monat - 10.000 Requests - Für kleine Sites **Pro Plan:** - ~$20-50/Monat - 100.000+ Requests - Für größere Sites **Tipp:** Mit mehreren Free-APIs kombinieren für mehr Requests! 💡 Tipps & Tricks Performance: 1. **Caching:** Bereits heruntergeladene Videos cachen 2. **CDN:** Statische Dateien über CDN 3. **Kompression:** gzip aktivieren Monetarisierung: 1. **Werbung:** Google AdSense 2. **Affiliate:** Amazon, eBay 3. **Donations:** PayPal, Patreon 4. **Premium:** Schnellerer Download, mehr Plattformen SEO: html <!-- In index.php einfügen: --> <meta name=\"description\" content=\"Videos von Instagram, TikTok, YouTube kostenlos herunterladen\"> <meta name=\"keywords\" content=\"video download, instagram download, tiktok download\"> 🚀 Erweitungen (Zukünftig) **Mögliche Features:** - [ ] Batch-Download (mehrere URLs) - [ ] Playlist-Download (YouTube) - [ ] Audio-only Download - [ ] Format-Auswahl (MP4, AVI, etc.) - [ ] Qualitäts-Auswahl (720p, 1080p, 4K) - [ ] Thumbnail-Download - [ ] Video-Vorschau - [ ] Browser-Extension - [ ] API für Entwickler - [ ] Mobile App 📱 Mobile Optimierung **Bereits implementiert:** - ✅ Responsive Design - ✅ Touch-optimierte Buttons - ✅ Mobile Navigation - ✅ Schnelle Ladezeit **PWA (Progressive Web App):** Manifest.json hinzufügen: json { \"name\": \"DownVid\", \"short_name\": \"DownVid\", \"start_url\": \"/\", \"display\": \"standalone\", \"background_color\": \"0f0f1e\", \"theme_color\": \"ff006e\" } 🌍 Mehrsprachigkeit **Sprachen hinzufügen:** 1. Neues PHP-File: `lang/de.php`, `lang/en.php` 2. Translations-Array: php $lang = [ 'title' => 'DownVid - Video Downloader', 'input_placeholder' => 'Video-URL hier einfügen...' ]; 3. In Seiten einbinden 📞 Support **Bei Problemen:** 1. README durchlesen 2. Troubleshooting checken 3. API-Dokumentation lesen 4. Server-Logs prüfen 📄 Rechtliches Wichtig: ⚠️ **Urheberrecht beachten!** - Nur eigene Videos oder mit Erlaubnis - Nicht für kommerzielle Zwecke ohne Lizenz - Fair-Use Regeln beachten - Platform-Richtlinien einhalten Disclaimer: DownVid ist ein Tool zum persönlichen Gebrauch. Nutzer sind selbst verantwortlich für die Einhaltung von Urheberrechten und Plattform-Richtlinien. 🎯 Best Practices User Experience: 1. **Klare Anweisungen** (4-Schritte-Guide) 2. **Fehlerbehandlung** (verständliche Meldungen) 3. **Loading-Indicator** (User weiß: es passiert was) 4. **Erfolgs-Feedback** (Thumbnail + Download-Button) Code Quality: 1. **Kommentare** (auch für andere verständlich) 2. **Error-Handling** (try-catch überall) 3. **Security** (Input validieren) 4. **Performance** (APIs cachen) 📈 Analytics (Optional) **Google Analytics einbinden:** html <!-- In index.php vor </head> --> <script async src=\"https://www.googletagmanager.com/gtag/js?id=GA_TRACKING_ID\"></script> **Tracking Events:** - Video-Download gestartet - Platform ausgewählt - Download erfolgreich - Download fehlgeschlagen 🎨 Logo-Varianten SVG (eingebettet): - ✅ Skalierbar - ✅ Kleine Dateigröße - ✅ CSS-animierbar Als PNG exportieren: html <!-- Rechtsklick auf SVG im Browser → \"Als Bild speichern\" --> Größen: 512x512, 256x256, 128x128, 64x64 Favicon erstellen: html <link rel=\"icon\" type=\"image/svg+xml\" href=\"logo.svg\"> 📝 Changelog Version 2.0 (Aktuell) **Features:** - ✅ Komplett neu in PHP 8.4 - ✅ Modernes Gradient-Design - ✅ SVG-Logo eingebettet - ✅ 6 Plattformen unterstützt - ✅ API-Integration - ✅ Mobile-optimiert - ✅ DSGVO-konform **Technisch:** - ✅ PHP 8.4 kompatibel - ✅ Responsive CSS - ✅ AJAX ohne jQuery - ✅ Modular aufgebaut 🏆 Credits **Design inspiriert von:** - Savefrom.net - Y2Mate - SnapTik **APIs powered by:** - RapidAPI - yt-dlp 📄 Lizenz Proprietär - Alle Rechte vorbehalten 🎉 Viel Erfolg mit DownVid! **Version:** 2.0 **Stand:** Januar 2026 **Sprache:** Deutsch 🇩🇪 **PRODUKTIONSBEREIT!** 🚀 🆘 Quick-Start bash 1. Dateien hochladen 2. Browser öffnen: https://deine-domain.de 3. URL einfügen 4. Download! MIT APIs: 1. RapidAPI Key holen 2. In download.php eintragen 3. Profit! 💰 **Ohne APIs:** Begrenzte Funktionalität **Mit APIs:** Volle Power! 🔥
📱 QR Portal - Professionelle QR-Codes 📋 Überblick Komplettes QR-Code-Portal mit User-Management, vielfältigen QR-Typen, individueller Gestaltung und EU-Zahlungs-QR-Codes. **Features:** - 👤 **User-System:** Registrierung & Login - 📱 **12 QR-Typen:** URL, Text, Zahlungen, Produkte, Downloads, Bücher, WiFi, vCard, etc. - 💶 **EU-Zahlungen:** SEPA QR (IBAN) & PayPal - 🎨 **Individuell:** Eigene Farben & Logo - 💾 **Speichern:** Alle QR-Codes in Datenbank - 📊 **Statistiken:** Scans tracken - ⬇️ **Download:** PNG-Format ✨ QR-Code Typen 1. **URL / Link** 🌐 - Webseiten - Social Media Profile - Online-Shops 2. **Text / Info** 📄 - Produktinfos - Anleitungen - Beschreibungen 3. **SEPA Zahlung** 💶 - **EU-konform!** - IBAN eingeben - Empfängername - Betrag (optional) - Verwendungszweck - **Funktioniert mit jeder Banking-App!** 4. **PayPal Zahlung** 💳 - PayPal Username/Email - Betrag (optional) - Erstellt paypal.me Link 5. **Produkt** 📦 - Produktseiten - Zusatzinfos - Support-Links 6. **Download** ⬇️ - PDFs - Software - Dateien 7. **Buch** 📚 - Zusatzinfos - Leseproben - Autor-Website 8. **E-Mail** 📧 - Mailto-Link - Öffnet E-Mail-App 9. **Telefon** 📱 - Tel-Link - Direktanruf 10. **SMS** 💬 - SMS-Link - Vorbefüllte Nummer 11. **WiFi** 📶 - WLAN-Zugang - SSID + Passwort - Verschlüsselung (WPA/WEP) - **Ein Scan = Verbunden!** 12. **vCard (Visitenkarte)** 👤 - Name - Telefon - E-Mail - Direkt in Kontakte speichern 💻 Technische Details Dateien: - **config.php** - Konfiguration (von install.php) - **functions.php** - Hilfsfunktionen - **install.php** - Installation - **style.css** - Design (Lila/Pink Gradient) - **login.php** - Login & Registrierung - **logout.php** - Logout - **index.php** - Startseite - **create.php** - QR-Code Generator (HERZSTÜCK!) - **dashboard.php** - User-Dashboard - **qr_codes/** - Generierte QR-Codes - **logos/** - Hochgeladene Logos Datenbank (2 Tabellen): **qr_users:** - id, username, email, password_hash - created_at **qr_codes:** - id, user_id, title, type - data (QR-Inhalt) - qr_color, qr_bgcolor, qr_size - logo_filename, filename - short_code (für Tracking) - scan_count - created_at, updated_at 🚀 Installation Schritt 1: Dateien hochladen bash Alle Dateien auf Webserver hochladen Schritt 2: Verzeichnisse prüfen bash chmod 755 qr_codes/ chmod 755 logos/ Schritt 3: install.php aufrufen https://deine-domain.de/install.php Schritt 4: Daten eingeben - DB Host: `localhost` - DB Name: `qr_portal` - DB User: `db_user` - DB Password: `db_password` - Portal-Name: `QR Portal` (oder eigener Name) Schritt 5: Installation abschließen - 2 Tabellen werden erstellt - install.php löscht sich selbst - **Fertig!** 📖 Benutzung Als User: 1. **Registrieren** auf der Startseite 2. **Login** mit E-Mail & Passwort 3. **\"+ QR erstellen\" klicken** 4. **Typ auswählen** (z.B. \"SEPA Zahlung\") 5. **Daten eingeben** (IBAN, Betrag, etc.) 6. **Design anpassen:** - Farbe wählen (Standard: Schwarz) - Größe wählen (300-1000px) - Logo hochladen (optional) 7. **\"QR-Code generieren\" klicken** 8. **Im Dashboard:** - Alle QR-Codes sehen - Downloaden (PNG) - Statistiken (Scans) - Löschen 💶 SEPA QR-Code (EPC) Was ist das? **SEPA QR-Codes** (auch \"EPC QR\" genannt) sind der **EU-Standard** für Überweisungen per QR-Code. Wie funktioniert's? 1. **QR-Code erstellen** mit: - Empfängername - IBAN - Betrag (optional) - Verwendungszweck (optional) 2. **Kunde scannt** mit Banking-App 3. **Überweisung ist vorausgefüllt!** - Name ✅ - IBAN ✅ - Betrag ✅ - Verwendungszweck ✅ 4. **Kunde muss nur noch bestätigen** Vorteile: - ✅ **Keine Tippfehler** bei IBAN - ✅ **Schneller** als manuell - ✅ **Weniger Fehler** - ✅ **Professionell** Wo nutzen? - 💰 **Rechnungen** (PDF mit QR) - 🛒 **Geschäfte** (an der Kasse) - 📄 **Mahnungen** - 🎫 **Tickets & Events** - 🏪 **Marktstände** Welche Apps unterstützen das? **Alle deutschen Banking-Apps:** - Sparkasse ✅ - Volksbanken ✅ - Deutsche Bank ✅ - Commerzbank ✅ - N26 ✅ - ING ✅ - etc. 🎨 Design-Anpassung Farben: **Standard:** - QR-Code: Schwarz (000000) - Hintergrund: Weiß (ffffff) **Anpassbar:** - Jede beliebige Farbe! - Empfehlung: Dunkle Farben für QR, heller Hintergrund - Kontrast wichtig für Scanbarkeit! **Beispiele:** - Blau: 0066cc - Rot: cc0000 - Grün: 00cc00 - Lila: 6600cc Logo: **Empfohlene Eigenschaften:** - Format: PNG (mit Transparenz) - Größe: Quadratisch (z.B. 500x500px) - Farbe: Einfarbig oder wenig Details - Hintergrund: Transparent - Platzierung: Automatisch mittig (20% der QR-Größe) **Hinweis:** Logo wird mit weißem Rand platziert für bessere Scanbarkeit. Größen: - **300x300:** Klein (für Print) - **400x400:** Standard - **500x500:** Groß - **1000x1000:** Sehr groß (für Poster) 🔧 Wie QR-Generierung funktioniert Technischer Ablauf: 1. **Daten sammeln** (aus Formular) 2. **Format erstellen:** - URL: `https://example.com` - SEPA: EPC-Format (spezielle Struktur) - WiFi: `WIFI:T:WPA;S:Name;P:Pass;;` - vCard: `BEGIN:VCARD...END:VCARD` 3. **QR mit Google Charts API generieren** 4. **Farben anpassen** (Pixel-Manipulation) 5. **Logo hinzufügen** (falls hochgeladen) 6. **Als PNG speichern** 7. **In Datenbank eintragen** Google Charts API: https://chart.googleapis.com/chart?cht=qr&chs=400x400&chl=DATEN **Kostenlos & Zuverlässig!** 💡 Anwendungsfälle E-Commerce: Produkt: Stuhl \"Nordic Style\" QR-Typ: Produkt URL: https://shop.de/stuhl-nordic-123 → Kunde scannt, kommt direkt zur Produktseite Restaurant: Speisekarte-Download QR-Typ: Download URL: https://restaurant.de/speisekarte.pdf → Kunde scannt, PDF öffnet sich Autor / Verlag: Buch: \"Mein Roman\" QR-Typ: Buch URL: https://autor.de/buch-extras → Leser scannt, bekommt Zusatzinfos Handwerker / Dienstleister: Rechnung QR-Typ: SEPA Zahlung IBAN: DE89 3704 0044 0532 0130 00 Betrag: 450,00 EUR Verwendungszweck: Rechnung 2024-123 → Kunde scannt, zahlt in 10 Sekunden Event / Konzert: WiFi-Zugang für Gäste QR-Typ: WiFi SSID: EventWLAN Passwort: Konzert2024 → Gast scannt, ist verbunden 🐛 Troubleshooting Problem: QR-Code wird nicht gescannt **Lösung:** - Kontrast erhöhen (dunkler QR, heller Hintergrund) - Größe erhöhen (mindestens 300px) - Logo kleiner machen oder entfernen - Auf glattem Untergrund drucken Problem: SEPA QR funktioniert nicht **Lösung:** - IBAN korrekt? (ohne Leerzeichen speichern) - Betrag im richtigen Format? (mit Punkt, nicht Komma) - Banking-App aktuell? Problem: Logo zu groß **Lösung:** - Wird automatisch auf 20% skaliert - Wenn QR nicht scannbar: Logo entfernen oder kleiner machen Problem: Kann kein Logo hochladen **Lösung:** - Nur PNG oder JPG - Max 2MB - Verzeichnis `logos/` beschreibbar? (`chmod 755`) 📊 Statistiken & Tracking Scan-Tracking: **Aktuell:** Einfacher Zähler in DB **Zukünftig möglich:** - Redirect-URL für Tracking - Scan-Zeitpunkt - Gerät-Info - Standort (mit Erlaubnis) Implementierung (optional): php // scan.php?code=abc123 $stmt = db()->prepare(\"UPDATE qr_codes SET scan_count = scan_count + 1 WHERE short_code = ?\"); $stmt->execute([$_GET['code']]); redirect('actual-url'); 🔒 Sicherheit Implementiert: - ✅ **Password Hashing** (PHP password_hash) - ✅ **SQL Injection Schutz** (PDO Prepared Statements) - ✅ **XSS Schutz** (htmlspecialchars) - ✅ **Session Security** (regenerate_id) - ✅ **Foreign Keys** (CASCADE delete) Empfehlungen: 1. **HTTPS verwenden** (Let's Encrypt kostenlos) 2. **Starke Passwörter** erzwingen 3. **Regelmäßige Backups** 4. **Upload-Limits** (Datei-Größe) 🚀 Erweiterungen (Zukünftig) **Mögliche Features:** - [ ] Scan-Tracking (Zeitpunkt, Gerät, Standort) - [ ] QR-Templates (vordefinierte Designs) - [ ] Batch-Generierung (CSV-Import) - [ ] API für Entwickler - [ ] QR-Code bearbeiten - [ ] Ablaufdatum für QR-Codes - [ ] Analytics-Dashboard - [ ] Team-Accounts (mehrere User) - [ ] White-Label (eigenes Branding) 📝 SEPA EPC QR-Code Format Technische Details: Zeile 1: BCD (Service Tag) Zeile 2: 002 (Version) Zeile 3: 1 (Character Set: UTF-8) Zeile 4: SCT (Identification: SEPA Credit Transfer) Zeile 5: [leer] (BIC - optional) Zeile 6: Max Mustermann (Name) Zeile 7: DE89370400440532013000 (IBAN) Zeile 8: EUR450.00 (Amount) Zeile 9: [leer] (Purpose - optional) Zeile 10: [leer] (Structured Reference - optional) Zeile 11: Rechnung 123 (Unstructured Remittance) Zeile 12: [leer] (Beneficiary to Originator - optional) **Wichtig:** - Jede Zeile mit ` ` getrennt - Betrag mit Punkt, nicht Komma - IBAN ohne Leerzeichen 🎯 Best Practices QR-Code Design: 1. **Hoher Kontrast:** Schwarz auf Weiß ist am besten 2. **Nicht zu klein:** Mindestens 300x300px 3. **Sauber drucken:** Keine Verzerrung 4. **Logo optional:** Nur wenn QR noch scannbar SEPA QR: 1. **Betrag angeben:** Kunde muss nichts tippen 2. **Verwendungszweck:** Eindeutige Referenz (Rechnung 123) 3. **Testen:** Vor Druck mit eigener Banking-App testen Allgemein: 1. **Titel vergeben:** Für bessere Organisation 2. **Regelmäßig prüfen:** QR-Codes auf Funktion testen 3. **Statistiken nutzen:** Scan-Zahlen auswerten 📄 Rechtliches DSGVO: **Gespeicherte Daten:** - Username, E-Mail, Passwort (gehasht) - QR-Code Daten (URLs, IBAN, etc.) - Scan-Statistiken **Rechte:** - Account löschen (TODO: implementieren) - Daten exportieren (TODO: implementieren) SEPA QR: - **Kein Payment-Provider:** Portal generiert nur QR-Code - **Keine Zahlung:** Überweisung erfolgt über Bank - **Keine Haftung:** User verantwortlich für korrekte IBAN 📞 Support **Bei Problemen:** 1. README durchlesen 2. Troubleshooting checken 3. Browser-Konsole prüfen (F12) 4. PHP Error-Log checken 📝 Changelog Version 1.0 (Aktuell) **Features:** - ✅ User-System (Login, Register) - ✅ 12 QR-Typen - ✅ SEPA EPC QR-Codes (EU-Standard!) - ✅ PayPal QR-Codes - ✅ Individuelle Farben - ✅ Logo-Upload - ✅ Dashboard mit Statistiken - ✅ Download als PNG - ✅ Datenbank-Speicherung **Technisch:** - ✅ PHP 8.0+ kompatibel - ✅ Moderne UI (Gradient-Design) - ✅ Responsive (Mobile) - ✅ Google Charts API - ✅ GD Library (Bildbearbeitung) 🎉 Viel Erfolg mit deinem QR Portal! **Version:** 1.0 **Stand:** Januar 2026 **Sprache:** Deutsch 🇩🇪 **PRODUKTIONSBEREIT!** 🚀 🆘 Quick-Start bash 1. Dateien hochladen 2. install.php aufrufen 3. DB-Daten eingeben 4. Installieren 5. Registrieren 6. QR-Code erstellen! SEPA QR in 60 Sekunden: 1. Login 2. \"+ QR erstellen\" 3. Typ: \"SEPA Zahlung\" 4. IBAN eingeben 5. Betrag: 100,00 EUR 6. Generieren 7. Download 8. Ausdrucken auf Rechnung 9. Kunde scannt & zahlt! **12 QR-TYPEN - SEPA ZAHLUNG - LOGO - FARBEN - PROFESSIONELL!** 💪
💰 FundingBox - Professionelle Crowdfunding-Plattform 🎉 FINALE VERSION v6.0 - KOMPLETT & PRODUKTIONSBEREIT Eine vollständige, moderne Crowdfunding-Plattform mit PayPal-Integration, Auszahlungs-System und Admin-Panel. 📋 INHALTSVERZEICHNIS 1. [Übersicht](übersicht) 2. [Features](features) 3. [Installation](installation) 4. [Auszahlungs-System](auszahlungs-system) 5. [Gebühren-System](gebühren-system) 6. [Admin-Panel](admin-panel) 7. [Technische Details](technische-details) 8. [FAQ](faq) ÜBERSICHT Was ist FundingBox? FundingBox ist eine **professionelle Crowdfunding-Plattform** mit allen wichtigen Features: ✅ **User-System** - Registrierung, Login, Profile ✅ **Projekt-Management** - Erstellen, verwalten, Updates ✅ **PayPal-Integration** - Echte Zahlungen + Demo-Modus ✅ **Auszahlungs-System** - Bankdaten & PayPal-Auszahlung ✅ **Gebühren-Berechnung** - PayPal + Platform-Provision ✅ **Admin-Panel** - Komplette Verwaltung ✅ **E-Mail-Benachrichtigungen** - Automatisch ✅ **Responsive Design** - Mobile-optimiert FEATURES 🔐 User-System Registrierung & Login: - Benutzername, E-Mail, Passwort - Bcrypt Password-Hashing - Session-Management - Passwort ändern - E-Mail ändern User-Profil (profile.php): - Account-Informationen - **Auszahlungsdaten** (PayPal/Bank) - Passwort ändern - E-Mail ändern 📝 Projekt-Management Projekt erstellen: - Titel, Beschreibung - Zielbetrag (€) - Kategorie (8 zur Auswahl) - Laufzeit (Enddatum) - Bild-Upload (JPG, PNG, GIF) Kategorien: - Technologie - Kunst & Kultur - Musik & Events - Sport - Bildung - Soziales - Umwelt - Sonstiges Projekt-Status: - **active** - Läuft - **successful** - Ziel erreicht - **failed** - Gescheitert - **draft** - Entwurf - **cancelled** - Abgebrochen 💰 Spenden-System PayPal-Integration: - REST API v2 - Sandbox für Tests - Live-Modus für Production - Automatische Rückmeldung Demo-Modus: - Für Tests ohne PayPal - Sofort bestätigt - Parallel nutzbar Gebühren-Berechnung: - **PayPal Gebühr:** 2,49% + 0,35€ - **Platform Gebühr:** 5% (anpassbar) - **Nettobetrag:** Automatisch berechnet - **Live-Vorschau** im Spenden-Formular 💳 Auszahlungs-System User hinterlegt Daten (profile.php): **Option 1: PayPal** - PayPal E-Mail-Adresse **Option 2: Banküberweisung** - Kontoinhaber - IBAN - BIC (optional) - Bankname (optional) Admin sieht alles (admin-payouts.php): - Alle User mit Auszahlungsanspruch - Komplette Empfänger-Daten - Aufschlüsselung pro User: - Gesamt Brutto - PayPal Gebühren - Platform Gebühren - **Auszuzahlen (Netto)** - Gesamt-Statistiken 📊 Admin-Panel admin.php - Dashboard: - 4 Statistik-Cards - Alle Projekte verwalten - Filter (Alle, Aktiv, Entwurf) - Projekte löschen admin-users.php - User-Verwaltung: - Alle User in Tabelle - Rolle (Admin/User Badge) - Statistiken (Projekte, Spenden) - Aktionen: - ↑ Admin machen - ↓ User machen - User löschen admin-payouts.php - Auszahlungen: - Pro User aufgeschlüsselt - Empfänger-Daten (PayPal/IBAN) - Gebühren-Übersicht - Netto-Beträge - Gesamt-Summen INSTALLATION 1. Dateien hochladen Alle Dateien auf Webserver hochladen 2. install.php aufrufen http://deine-domain.de/install.php 3. Formular ausfüllen: **Datenbank-Verbindung:** - DB Host: `localhost` (meist) - DB Name: `fundingbox` - DB User: [dein DB-User] - DB Password: [dein DB-Passwort] **Portal-Einstellungen:** - Portal-Name: `FundingBox` (anpassbar) - Site URL: `https://deine-domain.de` **👨💼 Admin-Account erstellen:** - Benutzername: [DEIN WUNSCH] - E-Mail: [DEINE E-MAIL] - Passwort: [DEIN SICHERES PASSWORT] 4. \"Installation starten\" klicken **Ergebnis:** ✓ 4 Tabellen erstellt (users, projects, contributions, project_updates) ✓ Admin-User mit DEINEN Daten angelegt ✓ config.php erstellt ✓ install.php löscht sich selbst 5. Zugangsdaten notieren! Success-Screen zeigt DEINE Admin-Daten - SPEICHERN! 🎯 Nach der Installation: 1. Einloggen http://deine-domain.de/login.php Mit DEINEN Admin-Daten einloggen 2. Profil einrichten Profil → Auszahlungsdaten → PayPal-E-Mail ODER Bankdaten eingeben → Speichern 3. PayPal konfigurieren (optional) paypal-config.php öffnen → Client ID & Secret eintragen → Siehe Abschnitt \"PayPal-Integration\" 4. Gebühren anpassen (optional) fees-config.php öffnen → PAYPAL_FEE_PERCENT (Standard: 2.49) → PAYPAL_FEE_FIXED (Standard: 0.35) → PLATFORM_FEE_PERCENT (Standard: 5.0) ← DEINE Provision! 5. Testen! 1. Projekt erstellen 2. Testspende (Demo-Modus) 3. Admin-Panel prüfen 4. Auszahlungs-Übersicht ansehen AUSZAHLUNGS-SYSTEM Workflow: Von Spende bis Auszahlung 1. User richtet Auszahlung ein: User loggt ein → Profil aufrufen → Auszahlungsdaten → Methode wählen (PayPal/Bank) → Daten eingeben → Speichern 2. Spender spendet: Spender wählt: 100,00 € System berechnet automatisch: - Brutto: 100,00 € - PayPal Gebühr: -2,84 € (2,49% + 0,35€) - Platform Gebühr: -5,00 € (5%) = NETTO: 92,16 € (geht an Projekt-Ersteller) In DB gespeichert: - amount: 100.00 - paypal_fee: 2.84 - platform_fee: 5.00 - net_amount: 92.16 3. Admin zahlt aus (Monatsende): Admin loggt ein → admin-payouts.php → Sieht Tabelle mit allen fälligen Auszahlungen: User: max_mueller Methode: PayPal PayPal: max@email.de Gesamt Brutto: 500,00 € PayPal Gebühren: -13,60 € Platform Gebühren: -25,00 € AUSZUZAHLEN: 461,40 € ✅ Admin überweist: → 461,40 € an max@email.de (PayPal) Admin behält: → 25,00 € (Platform-Gebühren = DEINE Provision) GEBÜHREN-SYSTEM Konfiguration (fees-config.php) PayPal Gebühren (Deutschland): php define('PAYPAL_FEE_PERCENT', 2.49); // 2,49% define('PAYPAL_FEE_FIXED', 0.35); // + 0,35€ Platform-Provision (DEINE Gebühr): php define('PLATFORM_FEE_PERCENT', 5.0); // 5% **Anpassbar!** Einfach Werte ändern. Beispiel-Rechnungen Spende: 10,00 € Spender zahlt: 10,00 € - PayPal Gebühr: -0,60 € (2,49% + 0,35€) - Platform Gebühr: -0,50 € (5%) = Projekt erhält: 8,90 € Spende: 50,00 € Spender zahlt: 50,00 € - PayPal Gebühr: -1,60 € - Platform Gebühr: -2,50 € = Projekt erhält: 45,90 € Spende: 100,00 € Spender zahlt: 100,00 € - PayPal Gebühr: -2,84 € - Platform Gebühr: -5,00 € = Projekt erhält: 92,16 € Gebühren-Vorschau im Spenden-Formular Wenn User Betrag eingibt, sieht er SOFORT: 💰 Gebühren-Übersicht Spendenbetrag: 100,00 € - PayPal Gebühr: -2,84 € - Platform Gebühr: -5,00 € Projekt erhält: 92,16 € **Live-Update** bei Betrag-Änderung! ADMIN-PANEL Zugriff Wer ist Admin? User mit `is_admin = 1` in Datenbank Beim Install: Dein gewählter Admin-Account bekommt automatisch `is_admin = 1` Weitere Admins: Admin loggt ein → admin-users.php → Bei User auf \"↑ Admin machen\" → User ist jetzt Admin Admin-Navigation Dashboard | User | Auszahlungen | ← Zur Seite admin.php - Dashboard: - 4 Statistik-Cards (User, Projekte, €, Spenden) - Alle Projekte in Tabelle - Filter (Alle, Aktiv, Entwurf) - Projekte ansehen/löschen admin-users.php - User-Verwaltung: - Alle User in Tabelle - Admin/User Badges - Statistiken (Projekte, Spenden) - Admin machen/entfernen - User löschen admin-payouts.php - Auszahlungen: - 4 Gesamt-Statistiken (Brutto, PayPal-Fee, Platform-Fee, Netto) - Tabelle pro User: - Username, E-Mail - Auszahlungsmethode (PayPal/Bank) - Empfänger-Daten (vollständig!) - Aufschlüsselung (Brutto, Gebühren, Netto) - Gesamt-Summe am Ende TECHNISCHE DETAILS Dateien (31 PHP-Dateien) Core: - config.php - Konfiguration - functions.php - Helper-Funktionen - email-functions.php - E-Mail-System - paypal-config.php - PayPal-Integration - fees-config.php - Gebühren-Berechnung Installation: - install.php - Basis-Installation - update-db.php - Auszahlungs-System (einmalig!) Frontend: - style.css - Design - footer.php - Footer-Component User-System: - login.php - Login & Register - logout.php - Logout - profile.php - Profil & Auszahlungsdaten Hauptseiten: - index.php - Startseite - projects.php - Alle Projekte - project.php - Projekt-Details - create-project.php - Projekt erstellen - project-updates.php - Updates verwalten - how-it-works.php - So funktioniert's Spenden: - support.php - Spenden-Formular - paypal-success.php - PayPal Success - paypal-cancel.php - PayPal Cancel User-Bereich: - dashboard.php - User-Dashboard Admin: - admin.php - Dashboard - admin-users.php - User-Verwaltung - admin-payouts.php - Auszahlungen Rechtliches: - impressum.php - Impressum - datenschutz.php - Datenschutz - agb.php - AGB Support: - help.php - Hilfe & FAQ - contact.php - Kontakt (mit CAPTCHA) Sicherheit Implementiert: ✅ **PDO Prepared Statements** (SQL Injection Schutz) ✅ **Password Hashing** (Bcrypt) ✅ **XSS-Schutz** (htmlspecialchars) ✅ **Session Regeneration** (bei Login) ✅ **File Type Validation** (Uploads) ✅ **CSRF-Ready** (erweiterbar) Empfehlungen: - HTTPS/SSL verwenden - Starke Passwörter - Regelmäßige Backups - .htaccess sichern FAQ Gebühren **Q: Wie hoch sind die Gebühren?** A: PayPal: 2,49% + 0,35€. Platform: 5% (anpassbar in fees-config.php) **Q: Kann ich Gebühren ändern?** A: Ja, in fees-config.php die Werte anpassen. **Q: Wer behält die Platform-Gebühr?** A: DU als Plattform-Betreiber. Das ist deine Provision. Auszahlung **Q: Wann wird ausgezahlt?** A: Manuell durch Admin (z.B. Ende des Monats) **Q: Muss User Auszahlungsdaten eingeben?** A: Ja, sonst kann Admin nicht auszahlen. User bekommt Hinweis im Profil. **Q: Kann User zwischen PayPal und Bank wechseln?** A: Ja, jederzeit im Profil änderbar. Admin **Q: Wie wird man Admin?** A: Beim Install als Admin angelegt ODER von anderem Admin gemacht (admin-users.php) **Q: Kann ich mehrere Admins haben?** A: Ja, unbegrenzt möglich. **Q: Kann letzter Admin entfernt werden?** A: Nein, mindestens 1 Admin muss bleiben (Schutz). PayPal **Q: Brauche ich PayPal Business?** A: Empfohlen, aber nicht zwingend. Personal geht auch. **Q: Sandbox vs Live?** A: Sandbox = Test mit Fake-Geld. Live = Echtes Geld. **Q: Wie viel kostet PayPal?** A: 2,49% + 0,35€ pro Transaktion (Deutschland) PRODUCTION CHECKLIST Vor dem Live-Gang: - [ ] **HTTPS/SSL** installieren - [ ] **PayPal Live-Modus** aktivieren (paypal-config.php) - [ ] **E-Mail-Server** konfigurieren - [ ] **Gebühren** prüfen (fees-config.php) - [ ] **Admin-Account** sichern (starkes Passwort) - [ ] **Impressum** ausfüllen (eigene Daten) - [ ] **Datenschutz** anpassen - [ ] **AGB** prüfen - [ ] **Backup-System** einrichten - [ ] **Alle Funktionen** testen - [ ] **Mobile** testen - [ ] **PayPal** testen (erst Sandbox, dann Live) SUPPORT & UPDATES Bei Problemen: DB-Verbindung fehlgeschlagen: - config.php prüfen - DB-Zugangsdaten korrekt? - DB existiert? Uploads funktionieren nicht: bash chmod 755 uploads chmod 755 uploads/projects Admin-Panel nicht erreichbar: - Als Admin eingeloggt? - is_admin = 1 in DB? CHANGELOG v6.0 (Aktuell) - ✅ Auszahlungs-System (PayPal/Bank) - ✅ Gebühren-Berechnung (PayPal + Platform) - ✅ Admin-Auszahlungs-Übersicht - ✅ Gebühren-Vorschau im Formular - ✅ Navigation mit Profil + Admin-Links v5.0 - ✅ Admin beim Install anlegen - ✅ Profil-Seite (Passwort/E-Mail ändern) - ✅ User-Verwaltung v4.0 - ✅ Kontaktformular (mit CAPTCHA) - ✅ Hilfe/FAQ (20+ Fragen) - ✅ AGB v3.0 - ✅ E-Mail-System (4 Templates) - ✅ Admin-Panel - ✅ Projekt-Updates - ✅ Footer & Rechtliches v2.0 - ✅ Dashboard funktional - ✅ Spenden-System - ✅ Suche & Filter v1.0 - ✅ Basis-System - ✅ Login & Register - ✅ Projekt erstellen ABSCHLUSS Was du jetzt hast: ✅ **31 PHP-Dateien** - Komplettes System ✅ **5 DB-Tabellen** - Vollständig ✅ **PayPal-Integration** - Funktioniert ✅ **Auszahlungs-System** - Professionell ✅ **Gebühren-Berechnung** - Automatisch ✅ **Admin-Panel** - Umfassend ✅ **E-Mail-System** - Automatisch ✅ **Responsive Design** - Mobile-ready ✅ **Sicherheit** - PDO, Hashing, XSS ✅ **Dokumentation** - Komplett (diese README) Nächste Schritte: 1. **Hochladen** auf Server 2. **install.php** ausführen (Admin-Daten eingeben!) 3. **update-db.php** ausführen (einmalig!) 4. **Einloggen** mit deinen Daten 5. **Profil** einrichten (Auszahlungsdaten) 6. **PayPal** konfigurieren (optional) 7. **Gebühren** anpassen (optional) 8. **Testen** im Demo-Modus 9. **Live gehen** mit PayPal Live-Modus 10. **Erfolgreich sein!** 🎉 **FUNDINGBOX v6.0 FINAL** **Professionell • Produktionsbereit • Komplett** **JETZT STARTEN! 💰🚀** *Diese Plattform wurde mit ❤️ entwickelt* *Viel Erfolg mit deiner Crowdfunding-Plattform!*
💬 PIWO-Chat Dein Server. Deine Regeln. Deine Privatsphäre. Ähnlich Whatsapp, Telegramm nur in mini Ausführung fürs Web. PIWO-Chat ist die kompromisslose Antwort auf datenhungrige Messenger-Giganten. Es ist eine vollständig verschlüsselte Web-App, die ohne externe Abhängigkeiten, Cloud-Zwang oder App-Store-Gängelung auskommt. Installiere deinen eigenen Messenger in Minuten auf deinem Webspace und behalte die 100%ige Souveränität über deine Daten. 🛡️ Unabhängigkeit trifft Sicherheit Während andere Messenger Metadaten in der Cloud sammeln, arbeitet PIWO-Chat autark auf deiner Hardware. Self-Hosted: Alles läuft über PHP und eine lokale SQLite-Datenbank. End-to-End Feeling: Nachrichten werden via AES-256-CBC verschlüsselt gespeichert. Zero External Dependencies: Keine Tracker, keine externen Bibliotheken von Drittanbietern. Hardened Security: Argon2id Passwort-Hashing, 2FA via E-Mail und Schutz gegen Brute-Force-Angriffe sind standardmäßig an Bord. 🚀 Funktionen, die begeistern Trotz der schlanken Architektur bietet PIWO-Chat den vollen Komfort moderner Kommunikation: Echtzeit-Chat: Einzel- und Gruppen-Chats mit Schreibstatus-Anzeige („... schreibt“) und Gelesen-Bestätigung (✓✓). Medien-Power: Sende Bilder (autom. WebP-Optimierung), Videos, Dokumente oder nimm Sprachnachrichten direkt im Browser auf. Emoji-Power: Über 650 Emojis mit integrierter deutscher Textsuche (z.B. „Feuer“ oder „Herz“). Admin-Kontrolle: Ein mächtiges Dashboard erlaubt die Benutzerverwaltung, das Einsehen von System-Logs und die Wartung der Datenbank mit nur einem Klick. Support-integriert: User können Admins über einen dedizierten Button direkt kontaktieren – ideal für geschlossene Communities oder Firmen-Intranets. 🛠️ Technische Exzellenz (Lightweight) PIWO-Chat ist so optimiert, dass es auf nahezu jedem Standard-Webhosting läuft: Stack: PHP 7.4+, Apache (mod_rewrite), SQLite3. Responsive Design: Ein modernes Dark-Mode Interface, das am Desktop genauso flüssig läuft wie als Progressive Web App auf dem Smartphone. One-Click Install: Lade den Inhalt des ZIP hoch, starte die install.php und dein Messenger ist einsatzbereit. Die Installationsdatei löscht sich aus Sicherheitsgründen danach selbst. PIWO-Chat ist mehr als ein Messenger – es ist dein privater digitaler Rückzugsort. Man könnte sogar für IOS und Android Apps entwickeln. Wenn man dann im User Profil einen QR Code Generator einbaut brauch der User nur noch den QR Code Scannen und kann den Chat auf Handy über die APP nutzen. Jetzt auf dem eigenen Server installieren | Dokumentation lesen
Das Filehoster-Prinzip ist eine Online-Dienstleistung, bei der Nutzer Dateien auf einem zentralen Server des Anbieters hochladen und über einen individuellen Link oder ähnliches Verfahren mit anderen teilen oder auch für ausschließlich private Nutzung nutzen können. Mit diesem Ajax File Hoster können Sie sich ein zweites Standbein aufbauen. In der Version 1 gibt es bereits viele nützliche Funktionen die ausgebaut und getestet sind bis php 8.4. Zum betreiben sollten Sie über ausreichenden Speicherplatz verfügen. Desweiteren sollte Ihr Server über alle gängigen Uploadfunktionen, Web oder Server Mailfunktionen verfügen. Die zusätzliche Shopfunktion die User nutzen können, beinhaltet die Zahlung des Produktes direkt an den Shop Premium Nutzer, dies sollte beim Datenschutz und den AGB berücksichtigt werden um Rechtssicherheit zu haben. Sowohl Premium und Shop Premium Buchung sowie auch der Verkauf der Shop User, verfügt jeweils über eine eigene Paypal IPN Funktion. Die entsprechenden Dateien werden in der Installationsbeschreibung genau gelistet. Shop User können Ihre Produkte auch selbst löschen Funktionen im Überblick User-Funktionen: Registrierung mit Email Adressen Bestätigung 2 Faktor Identifikation beim Login durch Mail an User der einen 6 stelligen Code eingeben muß um das Login zu vollenden es gibt 4 Premiumfunktionen, Standart User bekommen bei Registrierung automatisch 1 GB Speicherplatz zugewiesen (kostenlose Mitgliedschaft), Premium User Stufe 1/2 kann höheren Speicher kaufen jenach Preis und Speicherplatz den der Admin vorgibt und es gibt ein Shop Premium ebenfalls kostenpflichtig alles wird automatisch über Paypal abgewickelt, wobei Shop Besitzer über ein Paypal Geschäftskonto verfügen müssen. Standard User 1 GB Speicher, Single Upload für Dokumente (pdf, word usw.), Archive upload (zip und rar), Upload für Images, Ansicht aller eigenen Uploads getrennt in Dokumente, Archive und Images, dort besteht die Möglichkeit seinen uploads noch Namen zugeben, Löschantrag stellen (geht an den Admin der dann den Auftrag ausführt). Standard User können unabhängig vom Premium Status den Shop Status erwerben und digitale Produkte verkaufen. Standard User Bereich enthält Werbung Premium User 1 kann durch upgrade erworben werden was (monatliche Kosten die der Admin bestimmt sowie Speicherplatz) dafür bekommt der Premium User Zugang zum Multi Upload (auch als Einzel upload nutzbar), Support Ticket Modul und Partner Link Modul und Nutzen natürlich auch alle anderen Möglichkeiten vom Standard User und auch die Möglichkeit einen Shop zu buchen. User kann seinen upload ein Passwort zuordnen und auch wählen ob es öffentlich gedownloaded werden darf Premium User 2 hat alle Funktionen von Standard und Premium 1 plus höheren Speicher und Zugang zum Banner Modul wo dieser Bannerwerbung schalten kann, die bei Standard Usern eingeblendet werden. Und natürlich kann Premium 2 User auch die Shopfunktion buchen Besucher können für öffentliche Downloads Kommentare abgeben und bewerten, die Produkte der User direkt per Paypal kaufen und anschließend downloaden ohne Registrierung Zudem werden dem Besucher durch AGB, Datenschutz, Statistiken und Impressum ausreichende Informationen geboten. Auch die Blogfunktion kann ein reichhaltiges Angebot an Informationen durch den Betreiber verfügen. Gespeicherte Informationen (activitie logs) werden alle 180 Tage gelöscht (kann vom Admin aber auch verkürzt werden. (es wird nur die IP Adresse des Besuchers, Nutzers gespeichert) Alle User können Ihren eigenen Fortschritt sehen wieviel Speicherplatz bereits verbraucht ist Adminbereich-Funktionen Eigenes Login System (2 Faktor Identifikation kann nachgerüstet werden auf Wunsch) Einstellungen vornehmen wie Preise für upgrade Premium 1 und 2 mit Speicherplatz Zuweisung, Shop Preis kann festgelegt werden, Logo hochladen, Meta Informationen eintragen HomePage Url festlegen, eigene Paypal Email eintragen, Gesamtspeicher festlegen für seinen Server Passwort ändern Inder Dashboard Übersicht den Userspeicher aktualisieren, Jahresbereinigung der Standard User und Activity Logs auch einsehen, bereinigen wobei bei allen 3 Dateien die Möglichkeit besteht diese auch per Cronjob auszuführen, Dashboard zeigt auch Statistiken an Kann seine Blogfunktion nutzen um User, Besucher über Neuigkeiten zu informieren User verwalten Dokumente, Bilder Archive verwalten und komplett zu löschen Shop Produkte freischalten, sperren oder komplett löschen Löschanfragen Archive, Dokumente und Images mit einem klick komplett löschbar Support Tickets falls gewählt öffentlich freizuschalten und beantworten aus dem Adminbereich heraus Kommentare löschen Seiten wie Impressum, AGB und Datenschutz bearbeiten und verwalten Partner Links freigeben, sperren, löschen Banner anlegen, Banner von Premium User löschen Installationsroutine und Anleitung Project Name : Ajax File Hoster V1 Script Language Used : bis PHP8.4 getestet Database : MySQL User Interface Design : HTML, AJAX, JQUERY, JAVASCRIPT Web Browser : Mozilla, Google Chrome, IE8, OPERA Software : XAMPP / Wamp / Mamp/ Lamp (anyone)
Ihr vertrauenswürdiger MP3-Download-Shop - Hochwertige Musik sofort verfügbar. Entdecken Sie unseren MP3-Download-Shop! Wir bieten eine riesige Auswahl an hochwertiger Musik. Sofortiger Download, sicherer Einkauf. Ihre Musik, nur einen Klick entfernt. So könnte Ihre Beschreibung Ihres Shops aussehen. Verdienen Sie zum einen durch Ihr eigenes Angebot an Musik, durch registrierte User die einen eigenen Shop buchen können gegen Gebühr. Als Betreiber können Sie auch kostenlose Musikdownloads zur Verfügung stellen und registrierten Usern zum Download anbieten. Als Anbieter muss jeder die Urheberrechte bestätigen. Funktionen im Überblick User-Funktionen: Registrierung mit Email Adressen Bestätigung 2 Faktor Identifikation beim Login durch Mail an User der einen 6 stelligen Code eingeben muß um das Login zu vollenden es gibt ein Shop Premium kostenpflichtig alles wird automatisch über Paypal abgewickelt, wobei Shop Besitzer über ein Paypal Geschäftskonto verfügen müssen. Nach Zahlung wird der zukünftige Shop User auf ein Formular weitergeleitet und muss dort dann seine Daten angeben wie Zb. Paypal Email, Name etc. Besucher können der User direkt per Paypal kaufen und anschließend downloaden auch ohne Registrierung Zudem werden dem Besucher durch AGB, Datenschutz, Statistiken und Impressum ausreichende Informationen geboten. Gespeicherte Informationen (activitie logs) werden alle 180 Tage gelöscht (kann vom Admin aber auch verkürzt werden. (es wird nur die IP Adresse des Besuchers, Nutzers gespeichert) Jeder Besucher kann eine Höhr Probe von 60 Sekunden anhören vor seinem Kauf Besucher haben eine Suchfunktion die Titel und Beschreibung nach Stichworten durchsucht Adminbereich-Funktionen Eigenes Login System (2 Faktor Identifikation kann nachgerüstet werden auf Wunsch) Einstellungen vornehmen wie Preis für Shop kann festgelegt werden, Logo hochladen, Meta Informationen eintragen HomePage Url festlegen, eigene Paypal Email eintragen, Gesamtspeicher festlegen für seinen Server Passwort ändern In der Dashboard Übersicht den Activity Logs auch einsehen, bereinigen wobei die Möglichkeit besteht diese auch per Cronjob auszuführen, Dashboard zeigt auch Statistiken an Kann seine Startseite anlegen und bearbeiten nutzen um User, Besucher über Neuigkeiten zu informieren User verwalten Shop Produkte freischalten, sperren oder komplett löschen Löschanfragen Archive, Dokumente und Images mit einem klick komplett löschbar Seiten wie Impressum, AGB und Datenschutz bearbeiten und verwalten Banner anlegen, Banner löschen Installationsroutine und Anleitung Project Name : MP3 Download Shop Language Used : bis PHP8.4 getestet Database : MySQL User Interface Design : HTML, AJAX, JQUERY, JAVASCRIPT Web Browser : Mozilla, Google Chrome, IE8, OPERA Software : XAMPP / Wamp / Mamp/ Lamp (anyone)
Wk-Suma ist im Grundprinzip ein Webkatalog. Unterschied hier ist der Aufbau, dieser ähnelt auf denBlick einer Suchmaschine und gleichzeitig einem Webkatalog. Die gesamte Struktur ist hierbei sehreinfach gehalten worden um Usern einen top Überblick zu gewährleisten.Dieses System verfügt über eine sehr einfache Installationsroutine, so das selbst unerfahrene Anwenderinnerhalb weniger minuten das Script installiert haben. Weitere Bilder per Anfrage Funktionen im Überblick Mit dieser WK-Suma sind Sie ganz vorne mit dabei. Thumbnail Anbieter sollte ein kostenpflichtiger genutzt werden. Sie verfügt über nachfolgende Funktionen: 1. Von der Startseite aus zum Homepageeintrag Auswahl Kostenlos, Profi oder Premium 2. Suchfunktion nach Beschreibung, Titel oder PLZ 3. kostenlos=mit Backlink, Profi=farbig hervorgehoben, Premium=Startseite und farbig hervorgehoben 4. Bewertungssystem, Installationsroutine 5. Login zum ändern des Eintrages oder hochstufen auf Profi, Premium Adminbereich 1. Einträge einsehen / prüfen / freigeben / sperren 2. Kategorien und Unterkategorien anlegen, bearbeiten, löschen 3. Preise und Admindaten anlegen 4. Passwort anlegen 5. Impressum, Datenschutz, AGB via Editor anlegen, ändern, löschen Project Name : WK-Suma Script Language Used : PHP8 getestet bis 8.4 Database : MySQL User Interface Design : HTML, AJAX, JQUERY, JAVASCRIPT Web Browser : Mozilla, Google Chrome, IE8, OPERA Software : XAMPP / Wamp / Mamp/ Lamp (anyone)
🎁 Geschenke-Portal Ein innovatives Portal, auf dem User Wunschprodukte einstellen und Händler Aufgaben vergeben können. User erledigen Aufgaben (z.B. Social-Media-Posts) und sammeln Punkte, um ihre Wunschprodukte zu erhalten. 📋 Features User - Wunschprodukte mit Bild und Beschreibung einstellen - Aufgaben von Händlern erledigen - Punkte sammeln (4:1 Ratio - 50€ Produkt = 200 Punkte) - Tracking-Link: `projekt.de?u=@username` - Punkte bei Händlern einlösen - Chat mit Händlern Händler - Auf Wunschprodukte bewerben - Aufgaben erstellen (Social Media, Foren, etc.) - Screenshot-Beweise prüfen - Punkte vergeben - Produktkatalog verwalten - **Pflicht:** Impressum mit Steuernummer - **Pflicht:** Gewerbeanmeldung hochladen Admin - User/Händler verwalten - Gewerbeanmeldungen prüfen & freischalten - Impressum, Datenschutz, AGB bearbeiten - FAQ für User/Händler editieren - Statistiken einsehen 🚀 Installation Voraussetzungen - PHP 8.0 oder höher - MySQL/MariaDB - Apache/Nginx Webserver - GD Library (für Bildkonvertierung) Schritt 1: Dateien hochladen bash Projekt-Dateien auf Server hochladen Berechtigungen setzen chmod 755 -R /pfad/zum/projekt chmod 777 -R uploads/ Schritt 2: Installation ausführen 1. Browser öffnen: `https://deine-domain.de/install.php` 2. Datenbank-Zugangsdaten eingeben 3. Admin-Account erstellen 4. `install.php` wird automatisch gelöscht Schritt 3: Erste Schritte 1. Mit Admin-Account anmelden 2. Impressum, Datenschutz, AGB unter Admin → Einstellungen erstellen 3. FAQ für User/Händler anpassen 📂 Projektstruktur geschenke-portal/ ├── install.php Installation (löscht sich selbst) ├── config.php Datenbank-Konfiguration (erstellt von install.php) ├── functions.php Helper-Funktionen ├── index.php Marktplatz ├── register.php Registrierung (User/Händler) ├── login.php Login mit 2FA ├── 2fa_verify.php 2FA Code-Eingabe ├── logout.php Logout │ ├── user/ User-Bereich │ ├── dashboard.php Dashboard │ ├── wishlist.php Wunschliste verwalten │ ├── tasks.php Verfügbare Aufgaben │ ├── submit_task.php Aufgabe einreichen │ ├── points.php Punkteübersicht │ ├── profile.php Profil bearbeiten │ └── faq.php FAQ │ ├── haendler/ Händler-Bereich │ ├── dashboard.php Dashboard │ ├── gewerbe_upload.php Gewerbeanmeldung hochladen │ ├── profile.php Firmenprofil + Impressum │ ├── browse.php Wunschprodukte durchsuchen │ ├── apply.php Auf Produkt bewerben │ ├── tasks.php Aufgaben verwalten │ ├── review.php Aufgaben-Freigaben │ └── faq.php FAQ │ ├── admin/ Admin-Bereich │ ├── dashboard.php Dashboard + Statistiken │ ├── users.php User-Verwaltung │ ├── verify_gewerbe.php Gewerbeanmeldungen prüfen │ └── settings.php Impressum, Datenschutz, AGB, FAQ │ ├── chat/ Chat-System │ ├── index.php Chat-Übersicht │ ├── conversation.php Chat-Fenster │ └── send.php Nachricht senden (AJAX) │ ├── uploads/ Upload-Verzeichnisse │ ├── profiles/ Profilbilder │ ├── products/ Produktbilder │ ├── tasks/ Screenshot-Beweise │ └── gewerbe/ Gewerbeanmeldungen │ └── README.md Diese Datei 🔒 Sicherheit - ✅ PDO Prepared Statements (SQL Injection Protection) - ✅ htmlspecialchars() für alle Ausgaben (XSS Protection) - ✅ Password Hashing (PHP password_hash) - ✅ IP-Adressen gehasht (SHA-256) - ✅ 2FA per Email - ✅ Upload-Protection (index.php in Upload-Ordnern) - ✅ Session-Management 🎨 Design - Farbschema: Grün/Gelb (Marktplatz-Feeling) - Moderne Glassmorphism-Effekte - Responsive Design - Font Awesome Icons ⚙️ Konfiguration Datenbank (config.php) php define('DB_HOST', 'localhost'); define('DB_NAME', 'geschenke_portal'); define('DB_USER', 'root'); define('DB_PASS', ''); Punkte-Ratio (config.php) php define('POINTS_RATIO', 4); // 50€ Produkt = 200 Punkte 💡 Workflow 1. **User erstellt Wunschprodukt** - Produktbild, Name, Beschreibung, Preis - Punktepreis wird automatisch berechnet (4:1) 2. **Händler bewirbt sich** - Sieht Wunschprodukt im Marktplatz - Bewirbt sich mit Angebot 3. **User akzeptiert Händler** - Händler wird zugewiesen - Händler kann Aufgaben erstellen 4. **Händler erstellt Aufgaben** - \"Poste auf Instagram\" = 50 Punkte - User bekommt Tracking-Link: `projekt.de?u=@username` 5. **User erledigt Aufgabe** - Verwendet Tracking-Link - Lädt Screenshot hoch 6. **Händler prüft Aufgabe** - Genehmigt → User erhält Punkte - Ablehnt → User muss nachbessern 7. **User löst Punkte ein** - Hat genug Punkte gesammelt - Händler liefert Produkt 📧 Email-Konfiguration Das System verwendet die PHP `mail()` Funktion für: - 2FA Codes - Benachrichtigungen Für Produktivumgebung SMTP konfigurieren (z.B. PHPMailer). 🛠️ Troubleshooting Problem: Bilder werden nicht hochgeladen bash Prüfe Berechtigungen chmod 777 -R uploads/ Problem: Datenbank-Verbindungsfehler - Prüfe `config.php` Zugangsdaten - Prüfe MySQL-Service: `service mysql status` Problem: 2FA Emails kommen nicht an - Prüfe PHP `mail()` Konfiguration - Teste mit: `php -r \"mail('test@example.com', 'Test', 'Test');\"` Problem: Gewerbeanmeldung kann nicht hochgeladen werden - Prüfe PHP `upload_max_filesize` und `post_max_size` - Erhöhe in `php.ini`: upload_max_filesize = 10M post_max_size = 10M 📝 Lizenz Dieses Projekt wurde für phppower entwickelt. 🤝 Support Bei Fragen oder Problemen: 1. Prüfe diese README 2. Prüfe PHP Error Logs 3. Aktiviere Error Reporting in allen Dateien 🔄 Updates Aktuelle Version: 1.0 Changelog - v1.0 (Januar 2025) - Initiales Release - User/Händler/Admin-System - 2FA Authentication - Aufgaben-System - Chat-Funktion - Gewerbeanmeldung-Prüfung --- Entwickelt mit ❤️ phppower
💼 Startups & Investment Deals **Investment-Matching-Plattform** - \"Höhle der .......\" als Web-App ✅ VOLLSTÄNDIG IMPLEMENTIERT (v1.0) Core-System ✅ Modulare Struktur (`/modules`, `/admin`, `/includes`) ✅ DB mit Präfix `sid_` (9 Tabellen) ✅ Install-Script (2-Schritte, funktioniert) ✅ `functions.php` mit Auth, 2FA, Uploads, Admin-Emails, Notifications ✅ Upload-Funktionen (Video 100MB, PDF 20MB, Bilder 5MB) Auth-System ✅ `login.php` - 2FA Email-Auth (2-Schritt-Login) ✅ `register.php` - Vollständige Firmen-Ident: - Firmendaten (Name, Rechtsform, Registernummer, Website, Branche) - Adresse & Bankverbindung - Gewerbeanmeldung Upload (PDF) - Identitätsnachweis Upload (PDF/Bild) - **Startups:** Status='active' (sofort freigeschaltet) - **Investoren:** Status='pending' + Admin-Email-Benachrichtigung ✅ `logout.php` - Session beenden ✅ `profile.php` - Profil-Editor (Username, Email, Passwort) Frontend ✅ `index.php` - Landingpage mit Hero & 3 Info-Kästen ✅ Corporate Design (Weiß/Grau/Schwarz) ✅ Responsive Layout ✅ Business-Header-Bild (Unsplash) ✅ `faq.php`, `impressum.php`, `datenschutz.php` - CMS-gesteuerte Seiten Startup-Dashboard ✅ Übersicht mit Stats (Pitches, Angebote, Nachrichten) ✅ **Pitch erstellen** (`pitch-create.php`): - Titel, Tagline, Beschreibung - Business Model, Target Market, Team-Info - Kapitalbedarf + Equity-Angebot - Video-Upload (MP4, max 100MB) - Pitch-Deck-Upload (PDF) - Finanzplan-Upload (PDF) - Produktbilder (mehrere, Multi-Upload) - Entwicklungsphase (idea/prototype/mvp/revenue/growth) ✅ **Angebote verwalten** (`offers.php`): - Liste aller eingegangenen Investor-Angebote - Investment-Summe & Equity-Details - Investor-Nachricht - Status-Anzeige (pending/negotiating/accepted/declined) Investor-Dashboard ✅ **Pitches durchsuchen** (`dashboard.php`): - Nur sichtbar wenn `admin_verified=1` - Filter: Branche, Kapitalbedarf (min/max), Phase - Pitch-Übersicht mit Stats ✅ **Pitch ansehen** (`pitch-view.php`): - Vollständige Pitch-Details - Video-Player - Produktbilder-Galerie - Dokumente (Pitch-Deck, Finanzplan) - Investment-Details-Sidebar ✅ **Angebot erstellen** (`offer-create.php`): - Investment-Summe eingeben - Equity-Wunsch % eingeben - Nachricht an Startup - Notification an Startup Admin-Panel ✅ **Dashboard** (`admin/dashboard.php`): - Stats: Wartende Investoren, Aktive Pitches, Angebote ✅ **User-Verwaltung** (`admin/users.php`): - Alle Startups & Investoren - Dokumenten-Links (Gewerbe, Identität) - Investoren freischalten/ablehnen - Status-Verwaltung ✅ **CMS-Einstellungen** (`admin/settings.php`): - FAQ editieren (Textarea) - Impressum editieren - Datenschutz editieren 🚧 Optional / Future Features - [x] Chat-System (1:1 zwischen Startup & Investor bei aktivem Angebot) - [ ] Deal-Status-Tracking (agreed/completed/cancelled) - [ ] Email-Templates verbessern (HTML statt Plain Text) - [ ] WYSIWYG-Editor für CMS (statt Textarea) - [x] Image-Lightbox für Produktbilder - [x] Video-Player mit Custom Controls - [ ] PDF-Viewer für Pitch-Decks - [ ] Search-Autocomplete für Branchen - [x] Pitch-Edit-Funktion - [x] Notification-Center im Dashboard 📁 Projektstruktur startups-investment-deals/ ├── install.php ✅ DB-Setup & Admin ├── index.php ✅ Landingpage ├── login.php ✅ 2FA-Login ├── register.php ✅ Firmen-Registrierung ├── logout.php ✅ Session beenden ├── dashboard.php ✅ Router (Startup/Investor/Admin) ├── profile.php ✅ Profil-Editor ├── faq.php ✅ FAQ (CMS) ├── impressum.php ✅ Impressum (CMS) ├── datenschutz.php ✅ Datenschutz (CMS) ├── includes/ │ ├── config.php ✅ Auto-generiert │ ├── functions.php ✅ Core-Funktionen │ └── header.php ✅ Dashboard-Header ├── assets/ │ ├── css/ │ │ ├── style.css ✅ Base │ │ ├── auth.css ✅ Login/Register │ │ ├── dashboard.css ✅ Dashboard │ │ ├── forms.css ✅ Formulare │ │ └── pitch-view.css ✅ Pitch-Ansicht │ └── uploads/ │ ├── documents/ ✅ Gewerbe, ID │ ├── videos/ ✅ Pitch-Videos │ ├── images/ ✅ Produktbilder │ └── pitches/ ✅ Pitch-Decks, Finanzpläne ├── modules/ │ ├── startup/ │ │ ├── dashboard.php ✅ Startup-Übersicht │ │ ├── pitch-create.php ✅ Pitch erstellen │ │ └── offers.php ✅ Angebote verwalten │ └── investor/ │ ├── dashboard.php ✅ Pitches durchsuchen │ ├── pitch-view.php ✅ Pitch ansehen │ └── offer-create.php ✅ Angebot erstellen └── admin/ ├── dashboard.php ✅ Admin-Übersicht ├── users.php ✅ User-Verwaltung └── settings.php ✅ CMS-Editor 🚀 Installation 1. ZIP entpacken 2. `https://deine-domain.de/install.php` 3. DB-Zugangsdaten + Admin-Email eingeben 4. Admin-Account erstellen 5. Login & Plattform nutzen 📋 Workflow **Startup:** 1. Registrierung → Sofort `active` 2. Pitch erstellen (Video, PDF, Bilder) 3. Investoren sehen Pitch 4. Angebote erhalten 5. Verhandeln (per Chat - optional) **Investor:** 1. Registrierung → Status `pending` 2. Admin erhält Email 3. Admin prüft Dokumente → Freischaltung 4. Status `active` → Pitches sichtbar 5. Filter & Durchsuchen 6. Angebot erstellen 7. Verhandeln (per Chat - optional) **Admin:** 1. Email-Benachrichtigung bei Investor-Registrierung 2. Dokumente prüfen (Gewerbe, Identität) 3. Freischalten oder Ablehnen 4. CMS-Inhalte editieren (FAQ, Impressum, Datenschutz) ⚠️ Wichtig - **Deal-Unterzeichnung erfolgt EXTERN** (Hinweis auf Index & in FAQ) - Upload-Limits: Video 100MB, PDF 20MB, Bilder 5MB - 2FA per Email (6-stellig, 10 Min. gültig) - Admin-Email bei jeder Investor-Registrierung 🎨 Design - Corporate: Weiß/Grau/Schwarz - Business-Header: Unsplash Stock-Foto - Responsive: Mobile-optimiert - Icons: Unicode Emojis **Version:** 1.0 COMPLETE **Status:** ✅ Produktionsbereit **Lizenz:** Einzelplatz-Lizenz
# 📡 PingMaster – Website Ping Service Kostenloses PHP-Skript zum automatischen Pingen Ihrer Website an 500+ Suchmaschinen, Verzeichnisse und Dienste. ## Features - **500+ Ping-Ziele** in 7 Kategorien - **Live-Terminal** – Ping-Ergebnisse in Echtzeit per AJAX - **Kategorien wählbar** – SEO, Blogs, News, Verzeichnisse, Social, Deutsche Dienste, International - **Ping-Protokoll** – bis zu 500 Einträge mit Erfolgsrate - **3 Ping-Methoden** – XML-RPC, HTTP GET, IndexNow - **Modernes Dark-Design** – Terminal-Ästhetik - **Keine Datenbank nötig** – JSON-basiertes Log-System ## Installation 1. ZIP entpacken auf Webserver 2. Browser: `https://ihredomain.de/ping/` 3. Fertig – keine Konfiguration nötig! ## Dateistruktur ``` / ├── index.php Hauptseite mit Ping-Formular ├── ping-ajax.php AJAX-Backend für Ping-Batches ├── log.php Ping-Protokoll ├── functions.php Ping-Engine, XML-RPC, Logging ├── /data/ │ └── ping-targets.php 500+ Ping-Ziele (kategorisiert) └── /logs/ └── ping-history.json Automatisch generiert ``` ## Ping-Kategorien | Kategorie | Dienste | Beschreibung | |-----------|---------|--------------| | 🔍 SEO & Suchmaschinen | 20 | Google, Bing, Yandex, IndexNow... | | 📝 Blogs & RSS | 54 | Technorati, Pingomatic, Feedster... | | 📰 News | 20 | Google News, Topix, Digg... | | 📂 Verzeichnisse | 30 | DMOZ, Yahoo Dir, Delicious... | | 📱 Social Media | 14 | Twitter, LinkedIn, Xing, Tumblr... | | 🇩🇪 Deutsche Dienste | 20 | Ping.de, Bloggerei.de, Yigg... | | 🌐 International | 90+ | PingOMatic, Pingler, BulkPing... | ## Ping-Methoden **XML-RPC** (Hauptmethode): ```xml <methodCall> <methodName>weblogUpdates.ping</methodName> <params> <param><value><string>Titel</string></value></param> <param><value><string>https://ihrewebsite.de</string></value></param> </params> </methodCall> ``` **HTTP GET** (Suchmaschinen): ``` https://www.google.com/ping?sitemap=https://ihrewebsite.de/sitemap.xml https://api.indexnow.org/indexnow?url=https://ihrewebsite.de ``` ## Konfiguration In `functions.php` anpassbar: - `TIMEOUT` (Standard: 3 Sek. pro Ping) - `LOG_MAX_ENTRIES` (Standard: 500) In `ping-ajax.php`: - `BATCH_SIZE` (Standard: 12 Ziele pro AJAX-Request) ## Anforderungen - PHP 7.4+ (empfohlen: 8.0+) - `allow_url_fopen = On` (für GET-Pings) - `fsockopen` verfügbar (für XML-RPC-Pings) - Schreibrecht auf `/logs/` Ordner ## Troubleshooting **Viele Fehler / langsam:** - Timeout-Wert erhöhen: `TIMEOUT = 5` - Manche Dienste sind inaktiv – das ist normal (20-40% Fehlerrate erwartet) **Permission denied /logs/:** ```bash chmod 755 logs/ ``` **allow_url_fopen deaktiviert:** XML-RPC-Pings funktionieren trotzdem über fsockopen. --- PHP 7.4+ · Keine Datenbank · Keine API-Keys · Sofort einsatzbereit
# 🌐 Webverzeichnis – PHP Link Directory Ein vollständiges, modernes Webverzeichnis-System mit PayPal-Integration, 2-Faktor-Authentifizierung und umfangreichem Admin-Panel. --- ## 🚀 Features ### Frontend - Modernes, responsives Design (Plus Jakarta Sans + DM Mono) - Öffentliches Verzeichnis mit Suche, Filterung & Sortierung - Kategorien mit Icons und Website-Anzahl - VIP/Premium Spotlight-Bereich - Click-Tracking mit automatischer Weiterleitung ### Benutzer - Registrierung & Login mit **2-Faktor-Authentifizierung** (E-Mail Code) - Dashboard mit Statistiken (Websites, Aufrufe, Zahlungen) - Website einreichen mit Screenshot-Upload (WebP-Konvertierung) - Plan-Auswahl & PayPal-Zahlung - Konto-Verwaltung (Passwort, 2FA) ### Admin-Panel - Übersicht mit Echtzeit-Statistiken & Umsatzzahlen - **Website freigeben / ablehnen** (mit E-Mail-Benachrichtigung) - Nutzerverwaltung (sperren, entsperren, 2FA zurücksetzen) - Einstellungen: PayPal Sandbox ↔ Live umschalten, SMTP, etc. - Website als \"Featured\" markieren ### Zahlungen & E-Mails - **PayPal IPN** (Instant Payment Notification) – vollautomatisch - Automatische Rechnung per E-Mail nach Zahlung - E-Mail bei Freischaltung / Ablehnung - Alle E-Mails als HTML-Templates ### Sicherheit - PDO Prepared Statements (SQL-Injection-Schutz) - CSRF-Token-Schutz auf allen Formularen - bcrypt Passwort-Hashing (Cost 12) - Session-Sicherheit (HttpOnly, SameSite, Secure) - Upload-Schutz (index.php in allen Upload-Ordnern) - 2FA mit Zeitbegrenzung (10 Minuten) --- ## 📋 Pakete / Pläne | Plan | Preis | Laufzeit | Backlinks | Do-Follow | Featured | |------|-------|----------|-----------|-----------|---------| | Free | 0 € | 10 Jahre | 1 | ❌ | ❌ | | Basic | 20 € | 10 Jahre | 1 | ✅ | ❌ | | Premium | 15 € | 1 Jahr | 2 | ✅ | ✅ | | VIP | 12 € | 1 Jahr | 5 | ✅ | ✅ | *Preise & Laufzeiten im Admin-Panel anpassbar* --- ## 🛠️ Installation ### Voraussetzungen - PHP 8.0+ (empfohlen: 8.4) - MySQL 5.7+ / MariaDB 10.3+ - GD-Extension (für WebP-Konvertierung) - cURL-Extension (für PayPal IPN) - SMTP-Zugang (für E-Mail-Versand) ### Schritt-für-Schritt **1. Dateien hochladen** ``` Alle Dateien in das gewünschte Webroot-Verzeichnis hochladen. z.B. /var/www/html/verzeichnis/ ``` **2. Berechtigungen setzen** ```bash chmod 755 uploads/ chmod 755 uploads/screenshots/ chmod 755 uploads/avatars/ chmod 644 *.php ``` **3. Installation starten** ``` Browser öffnen: https://ihredomain.de/install.php ``` **4. Installation Schritt 1: Datenbank** - Datenbankhost (meist: `localhost`) - Datenbankname (vorher in phpMyAdmin anlegen) - Tabellen-Prefix (Standard: `wv_`) - Datenbankbenutzer & Passwort **5. Installation Schritt 2: Konfiguration** - Website-Name und URL - Admin-Benutzername, E-Mail & Passwort - PayPal-E-Mail (Empfänger der Zahlungen) - SMTP-Zugangsdaten für E-Mail-Versand **6. Fertig!** - Die `install.php` löscht sich selbst - Admin-Panel: `https://ihredomain.de/admin/` - Frontend: `https://ihredomain.de/` --- ## ⚙️ PayPal einrichten ### Sandbox (Test-Modus) 1. PayPal Developer Account: https://developer.paypal.com 2. Sandbox-Konto erstellen 3. In `config.php`: `PAYPAL_SANDBOX = true` 4. Im Admin-Panel → Einstellungen → PayPal → Sandbox ### Live-Modus aktivieren 1. Admin-Panel → Einstellungen → PayPal → **Live** 2. PayPal IPN-URL eintragen: `https://ihredomain.de/paypal-ipn.php` 3. PayPal-Account → Profil → Benachrichtigungen → IPN aktivieren ### IPN-URL ``` https://ihredomain.de/paypal-ipn.php ``` --- ## 📧 E-Mail / SMTP einrichten ### Konfiguration ``` SMTP-Host: mail.ihredomain.de SMTP-Port: 587 (STARTTLS) oder 465 (SSL) SMTP-User: noreply@ihredomain.de SMTP-Pass: ihr-passwort ``` ### E-Mail-Templates Alle Templates in `/emails/`: - `twofa.php` – 2FA-Code - `invoice.php` – Rechnung nach Zahlung - `site_approved.php` – Website freigeschaltet - `site_rejected.php` – Website abgelehnt - `welcome.php` – Willkommen nach Registrierung - `admin_payment.php` – Admin: neue Zahlung - `admin_new_site.php` – Admin: neuer Eintrag --- ## 📁 Dateistruktur ``` webverzeichnis/ ├── install.php ← Installation (löscht sich selbst) ├── config.php ← Konfiguration (auto-generiert) ├── functions.php ← Hilfsfunktionen ├── index.php ← Startseite ├── verzeichnis.php ← Öffentliches Verzeichnis ├── neu-eintragen.php ← Website einreichen ├── paypal-zahlung.php ← PayPal-Weiterleitung ├── paypal-ipn.php ← PayPal IPN Handler ├── zahlung-erfolg.php ← Danke-Seite ├── zahlung-abbruch.php ← Abbruch-Seite ├── dashboard.php ← User Dashboard ├── meine-websites.php ← User: eigene Websites ├── konto.php ← Kontoeinstellungen + 2FA ├── login.php ← Login + 2FA ├── register.php ← Registrierung ├── logout.php ← Abmelden ├── click.php ← Click-Tracker ├── includes/ │ ├── header.php ← Header/Navigation │ └── footer.php ← Footer ├── emails/ ← E-Mail-Templates │ ├── twofa.php │ ├── invoice.php │ ├── site_approved.php │ ├── site_rejected.php │ ├── welcome.php │ ├── admin_payment.php │ └── admin_new_site.php ├── admin/ │ ├── index.php ← Admin Dashboard │ ├── websites.php ← Websites verwalten │ ├── users.php ← Nutzer verwalten │ ├── settings.php ← Einstellungen │ └── index.php ← Zugriffsschutz ├── uploads/ │ ├── screenshots/ ← Website-Screenshots │ └── avatars/ ← User-Avatare └── logs/ └── ipn.log ← PayPal IPN-Log ``` --- ## 🔧 Troubleshooting ### Problem: E-Mails werden nicht gesendet - SMTP-Zugangsdaten im Admin-Panel prüfen - Port 587 (STARTTLS) oder 465 (SSL) testen - Fallback: Wenn SMTP leer, wird `mail()` verwendet - IPN-Log prüfen: `/logs/ipn.log` ### Problem: Bilder werden nicht zu WebP konvertiert - PHP GD-Extension prüfen: `php -m | grep gd` - WebP-Support prüfen: `php -r \"phpinfo();\" | grep webp` - Schreibrechte auf `/uploads/screenshots/` prüfen ### Problem: PayPal IPN kommt nicht an - IPN-URL muss öffentlich erreichbar sein (kein localhost!) - PayPal-Account → Profil → IPN aktivieren - SSL/HTTPS erforderlich für Live-Modus - IPN-Log prüfen: `/logs/ipn.log` ### Problem: 2FA-Code kommt nicht - SMTP-Einstellungen prüfen - Spam-Ordner des Empfängers prüfen - SMTP-Log auf Serverebene prüfen ### Problem: install.php existiert noch - install.php wurde nach erfolgreicher Installation automatisch gelöscht - Falls nicht: manuell löschen! ### Fehler: \"Ungültiges CSRF-Token\" - Browser-Cache leeren - Session-Cookie löschen und neu anmelden --- ## 🔒 Sicherheitsempfehlungen 1. **HTTPS** immer aktivieren (Let's Encrypt) 2. `logs/` Verzeichnis nicht über Web erreichbar machen: ```apache # .htaccess RewriteRule ^logs/ - [F,L] ``` 3. PayPal auf **Live-Modus** stellen nach Tests 4. **2FA** für Admin-Account aktivieren 5. Regelmäßige **Datenbankbackups** --- ## 📄 Lizenz Privat / Eigennutzung. Alle Rechte vorbehalten.
# 📡 RSS-Verzeichnis – PHP-Skript Kostenloses RSS-Feed-Verzeichnis in PHP 8.0+ mit Live-Feed-Vorschau, RSS-Button-Generator, OPML-Export und Admin-Panel. ## Features - **Feed-Verzeichnis** – Kategorien mit Zähler, Suche & Filter, Sortierung - **Feed-Eintragen** – Gäste UND registrierte Nutzer (konfigurierbar) - **Live Feed-Vorschau** – Integrierter Feed-Reader mit bis zu 20 Beiträgen - **RSS-Button Generator** – HTML-Code in 4 Farben + 3 Größen - **OPML-Export** – Alle Feeds oder nach Kategorie gefiltert - **RSS-Feed des Verzeichnisses** – /rss.php - **2FA per E-Mail** – 6-stelliger Code, 10 Min. gültig - **Admin-Panel** – Feeds freischalten/ablehnen, Nutzerverwaltung, Einstellungen ## Installation 1. ZIP entpacken auf Webserver 2. Datenbank anlegen (MySQL/MariaDB, UTF-8) 3. Browser: `https://ihredomain.de/install.php` 4. Schritt 1: Datenbankverbindung eingeben 5. Schritt 2: Admin-Konto + SMTP konfigurieren 6. `install.php` löscht sich automatisch ## Standard-Kategorien (18) Auto & Motorrad, Bildung & Beruf, Business, Computer & Technik, Finanzen, Freizeit & Hobby, Gesellschaft, Gesundheit, Internet, Kostenlos & Gratis, Kunst & Kultur, Medien, Nachrichten, Reisen, Sport, Versicherungen, Wirtschaft, Sonstiges ## Dateistruktur ``` / ├── install.php Installationsassistent (löscht sich selbst) ├── config.php Konfiguration (auto-generiert) ├── functions.php Alle Hilfsfunktionen ├── index.php Startseite ├── verzeichnis.php Feed-Verzeichnis mit Suche & Filter ├── feed-eintragen.php Feed einreichen (Gäste + Login) ├── feed-vorschau.php Live Feed-Reader + Feed-Details ├── rss-button.php RSS-Button Generator ├── opml-export.php OPML Download ├── rss.php RSS-Feed des Verzeichnisses ├── click.php Klick-Tracker + Redirect ├── login.php Login mit 2FA ├── register.php Registrierung ├── logout.php Abmelden ├── konto.php Konto-Verwaltung + 2FA-Toggle ├── /admin/ │ ├── index.php Admin Dashboard │ ├── websites.php Feed-Verwaltung │ ├── users.php Nutzerverwaltung │ └── settings.php System-Einstellungen ├── /includes/ │ ├── header.php Navigation + CSS │ └── footer.php Footer ├── /emails/ E-Mail-Templates ├── /uploads/logos/ Feed-Logos (WebP) └── /logs/ Server-Logs ``` ## Admin-Panel URL: `/admin/index.php` - **Dashboard** – Statistiken, ausstehende Feeds - **Feed-Verwaltung** – Freischalten/Ablehnen mit E-Mail, Featured markieren - **Nutzerverwaltung** – Aktivieren/Sperren/Löschen, 2FA-Reset - **Einstellungen** – Website-Name/URL, SMTP, Gäste erlauben, Auto-Approve ## Sicherheit - PDO Prepared Statements überall - CSRF-Token-Schutz auf allen Formularen - bcrypt Passwort-Hashing (Cost 12) - HttpOnly Session-Cookies - XSS-Schutz via htmlspecialchars() - Upload-Schutz (index.php in Upload-Ordnern) - WebP-Konvertierung für alle Bild-Uploads ## E-Mail-Templates | Datei | Zweck | |-------|-------| | twofa.php | 2FA-Code bei Login | | welcome.php | Willkommen nach Registrierung | | feed_submitted.php | Bestätigung nach Einreichen | | feed_approved.php | Feed wurde freigeschaltet | | feed_rejected.php | Feed abgelehnt + Grund | | admin_new_feed.php | Admin: Neuer Feed eingereicht | ## Anforderungen - PHP 8.0+ (empfohlen: 8.2+) - MySQL 5.7+ / MariaDB 10.3+ - PHP-Extensions: PDO, GD, finfo, SimpleXML - Webserver: Apache / Nginx ## Troubleshooting **WebP-Konvertierung schlägt fehl:** ``` php -m | grep gd ``` GD-Extension aktivieren in php.ini: `extension=gd` **Feed-Vorschau lädt nicht:** - `allow_url_fopen = On` in php.ini prüfen - Oder cURL aktiviert? **E-Mails kommen nicht an:** - SMTP-Einstellungen in Admin → Einstellungen prüfen - Port 587 (STARTTLS) oder 465 (SSL) - Leer lassen → PHP mail() als Fallback **Gäste können nicht eintragen:** - Admin → Einstellungen → \"Gäste dürfen eintragen\" auf Ja --- PHP 8.0+ · MySQL · Kostenlos · Keine Abhängigkeiten