Qr Code generator

[easycoding] Qr Code generator

  •  Thread starter
  •  Admin
  • Our new online tool is available


    1768413513575.webp


    QrGenerator


    To make it easier for you, use our qr code generator, we're providing a tool that will allow you to easly create and download generated QrCode.



    And all this for free.

    You must be registered on easycoding to use this tool.




    (the link is available in the navigation.)


    Use this post to give us feedback on its use.
     
    Last edited:
  •  Thread starter
  •  Admin
  • New Version V2


    1767615861102.webp


    # Générateur de Code QR Multi-Type 🎨

    Application web professionnelle et complète pour générer **9 types différents** de codes QR avec interface moderne, personnalisation avancée et statistiques de vues.
    ## 🚀 Fonctionnalités Principales
    ### 📱 9 Types de Codes QR Supportés
    - 📝 **Texte** - Messages et citations
    - 🔗 **Lien Web** - URLs avec validation
    - ✉️ **Email** - Courrier avec sujet et corps
    - 📱 **Appel** - Numéro de téléphone clickable
    - 💬 **SMS** - Messages texte préremplis
    - 👤 **Contact** - Carte de visite (vCard 3.0)
    - 📶 **WiFi** - Configuration réseau automatique
    - 📍 **Localisation** - Coordonnées GPS pour navigation
    - 📅 **Événement** - Rendez-vous calendrier (iCal)
    ### 🎨 Personnalisation Avancée
    - ✅ Sélection dynamique du type de QR code
    - 🎨 Personnalisation des couleurs (QR + fond)
    - 📏 4 tailles disponibles (150px à 600px)
    - 🏷️ Formulaires adaptatifs par type
    - 📝 Placeholders contextuels et professionnels
    ### 📥 Export et Partage
    - ✅ Téléchargement PNG avec timestamp
    - 📋 Copie dans le presse-papier
    - 🎯 Génération instantanée en temps réel
    - ⌨️ Raccourci clavier (Ctrl+Enter)
    ### 💾 Historique Intelligent
    - 📚 Sauvegarde des 10 derniers QR codes
    - 🔄 Régénération rapide avec tous les paramètres
    - 📅 Horodatage et identification du type
    - 💻 Stockage local (localStorage)
    ### 📊 Statistiques de Vues
    - 👁️ Compteur de vues quotidiennes
    - 📈 Compteur de vues totales
    - 🔐 Détection par session (pas de comptage multiple)
    - 📝 Logs détaillés et persistants
    ## 📋 Prérequis
    - **PHP** 7.0 ou supérieur
    - **Serveur web** Apache, Nginx, ou serveur PHP intégré
    - **Navigateur** moderne avec support JavaScript ES6+
    - **Stockage** Permissions d'écriture pour les fichiers de log
    ## 🛠️ Installation
    ### Démarrage Rapide
    ```bash
    # 1. Cloner ou télécharger le projet
    cd qrgenerator
    # 2. Lancer le serveur PHP
    php -S localhost:8000
    # 3. Ouvrir dans le navigateur
    # http://localhost:8000
    ```
    ### Serveur Web (Apache/Nginx)
    1. Placer le projet dans le répertoire web (htdocs, public_html, etc.)
    2. S'assurer que PHP a les permissions d'écriture
    3. Accéder via http://votre-domaine.com/qrgenerator/
    ## 📁 Structure du Projet
    ```
    qrgenerator/
    ├── index.php # Page principale (interface Web)
    ├── config.php # Configuration centralisée
    ├── generateur.php # Classe QRCodeGenerator (9 types)
    ├── api.php # API JSON pour génération
    ├── count.php # Gestion des compteurs de vues
    ├── styles.css # Design moderne et responsive
    ├── views.log # Log des vues quotidiennes
    ├── views_total.log # Log du compteur total
    ├── error.log # Log des erreurs
    └── README.md # Documentation complète
    ```
    ## 🎯 Guide d'Utilisation
    ### Générer un Code QR
    1. **Choisir le type** - Cliquez sur l'un des 9 boutons de type
    2. **Remplir le formulaire** - Les champs s'adaptent au type sélectionné
    3. **Personnaliser** - Ajustez la taille et les couleurs
    4. **Générer** - Cliquez sur "Générer le Code QR"
    ### Exemples par Type
    #### 📝 Texte
    ```
    Contenu: "Bienvenue chez nous"
    → QR code simple avec le message
    ```
    #### 🔗 Lien Web
    ```
    URL: https://www.monsite.com
    → Redirection directe au site
    ```
    #### ✉️ Email
    ```
    Email: [email protected]
    Sujet: "Demande de renseignements"
    Message: "Je souhaite en savoir plus..."
    → Ouvre le client email prérempli
    ```
    #### 👤 Contact (vCard)
    ```
    Nom: Jean Dupont
    Organisation: ACME Inc.
    Email: [email protected]
    Téléphone: +33123456789
    → Ajoute le contact au répertoire
    ```
    #### 📶 WiFi
    ```
    SSID: MonReseau
    Mot de passe: SecurePassword123
    Sécurité: WPA
    → Connexion automatique au WiFi
    ```
    #### 📍 Localisation
    ```
    Latitude: 48.8566
    Longitude: 2.3522
    → Ouvre GPS/Google Maps
    ```
    #### 📅 Événement
    ```
    Titre: Réunion Q1
    Date: 2026-01-10
    Heure: 14:00-15:30
    Lieu: Salle 305
    → Ajoute au calendrier (.ics)
    ```
    ### Télécharger et Partager
    ```
    1. Cliquez sur "📥 Télécharger PNG"
    → Fichier nommé: qr-code-[TYPE]-[TIMESTAMP].png
    2. Cliquez sur "📋 Copier"
    → Image copiée dans le presse-papier
    3. Utilisez "🗑️ Effacer"
    → Réinitialise la génération
    ```
    ## ⚙️ Configuration
    ### Fichier config.php
    Personnalisez les paramètres :
    ```php
    // Tailles de QR code disponibles
    $qrSizes = [
    150 => 'Petite (150px)',
    250 => 'Moyenne (250px)',
    400 => 'Grande (400px)',
    600 => 'Très grande (600px)'
    ];
    // Types de QR code supportés
    $qrTypes = [
    'text' => [...], // Texte
    'url' => [...], // URL
    'email' => [...], // Email
    'phone' => [...], // Appel
    'sms' => [...], // SMS
    'contact' => [...], // Contact vCard
    'wifi' => [...], // WiFi
    'location' => [...], // Localisation
    'calendar' => [...] // Événement iCal
    ];
    // Historique
    define('MAX_HISTORY_ITEMS', 10);
    // Fuseau horaire
    date_default_timezone_set('Europe/Paris');
    ```
    ## 🔧 Architecture Technique
    ### Classe QRCodeGenerator
    ```php
    // Utilisée via api.php
    QRCodeGenerator::generate($type, $data);
    ```
    **Formats de sortie** :
    - **Email** : `mailto:` avec sujet et corps
    - **Phone** : `tel:` pour appels directs
    - **SMS** : `sms:` avec message prérempli
    - **WiFi** : Format QR WiFi standard
    - **Contact** : vCard 3.0
    - **Localisation** : `geo:` URI standard
    - **Événement** : iCalendar (RFC 5545)
    ### API JSON (api.php)
    ```javascript
    // Requête
    POST /api.php
    {
    "type": "email",
    "data": {
    "email": "[email protected]",
    "subject": "Sujet",
    "message": "Corps du message"
    }
    }
    // Réponse
    {
    "success": true,
    "content": "mailto:[email protected]?subject=...",
    "type": "email"
    }
    ```
    ## 🎨 Design et Interface
    ### Caractéristiques du Design
    - 🎨 **Palette moderne** - Gradients bleu/violet
    - 📱 **Responsive** - Mobile, tablette, desktop
    - ♿ **Accessible** - Contraste suffisant, labels clairs
    - ⚡ **Performant** - Chargement rapide, animations fluides
    - 🌐 **Multi-langue** - Français professionnel
    ### Thème Actuel
    ```css
    Primary: #667eea → #764ba2 (gradient)
    Success: #10b981
    Info: #0ea5e9
    Danger: #ef4444
    Background: #f8fafc
    Border: #e8eef5
    Text: #2d3748
    ```
    Modifiez `styles.css` pour personnaliser les couleurs.
    ## 🔒 Sécurité
    - ✅ **Sessions sécurisées** - Cookies httpOnly
    - ✅ **Protection CSRF** - Validation JSON
    - ✅ **Validation d'entrées** - Sanitization PHP
    - ✅ **Gestion d'erreurs** - Logs détaillés
    - ✅ **HTTPS support** - Configuration configurable
    - ✅ **Comptage par session** - Pas d'abus
    ## 📊 Logs et Statistiques
    ### Format des Fichiers
    **views.log** :
    ```
    2026-01-05,42
    2026-01-06,15
    ```
    **views_total.log** :
    ```
    157
    ```
    ### Réinitialisation
    Pour réinitialiser les statistiques :
    ```bash
    # Supprimer les fichiers log
    rm views.log views_total.log error.log
    # Les fichiers seront recréés automatiquement
    ```
    ## 🐛 Dépannage
    ### Le compteur de vues ne fonctionne pas
    - ✅ Vérifiez les permissions d'écriture du répertoire
    - ✅ Consultez `error.log` pour les détails
    - ✅ Assurez-vous que PHP a les droits d'accès
    ### Le formulaire ne change pas au changement de type
    - ✅ Vérifiez que JavaScript est activé
    - ✅ Ouvrez la console du navigateur (F12)
    - ✅ Rechargez la page (Ctrl+F5)
    ### L'historique ne se sauvegarde pas
    - ✅ Vérifiez que localStorage est activé
    - ✅ Testez en navigation normale (pas incognito)
    - ✅ Vérifiez l'espace disque disponible
    ### Les QR codes WiFi ne se connectent pas
    - ✅ Assurez-vous que le SSID est exact
    - ✅ Vérifiez le type de sécurité (WPA/WEP/Aucune)
    - ✅ Testez sur plusieurs appareils
    ## 🚀 Améliorations Futures
    - [ ] **Thèmes prédéfinis** - Styles de couleurs pré-configurés
    - [ ] **Formats supplémentaires** - SVG, JPEG, PDF
    - [ ] **Niveaux de correction** - Customizable error correction
    - [ ] **Logo au centre** - Insertion d'image personnalisée
    - [ ] **API REST** - Génération programmatique de QR codes
    - [ ] **Base de données** - Historique côté serveur
    - [ ] **Analytics avancées** - Graphiques de performance
    - [ ] **Export batch** - Génération multiple en masse
    - [ ] **Codes dynamiques** - QR codes changements
    ## 📄 Licence
    Copyright © [easycoding.fr](https://www.easycoding.fr)
    Distribué sous licence libre pour usage personnel et commercial.
    ## 👨‍💻 Support et Contribution
    **Questions ?** Visitez [easycoding.fr](https://www.easycoding.fr)
    **Suggestions ?** N'hésitez pas à proposer des améliorations.
    ---
    Créé avec ❤️ par **easycoding.fr** | Dernier update: Janvier 2026
    ## 📊 Logs et Statistiques
    ### Format des logs
    - **views.log** : `date,nombre_de_vues`
    - **views_total.log** : nombre total de vues
    ### Réinitialisation
    Pour réinitialiser les compteurs, supprimez les fichiers `.log`
    ## 🐛 Dépannage
    **Le compteur ne fonctionne pas** :
    - Vérifiez les permissions d'écriture du répertoire
    - Consultez error.log pour les détails
    **Le QR code ne se génère pas** :
    - Vérifiez la console JavaScript du navigateur
    - Assurez-vous que la bibliothèque QRious est chargée
    **L'historique ne se sauvegarde pas** :
    - Vérifiez que localStorage est activé dans votre navigateur
    - Testez en navigation privée
    ## 🚀 Améliorations Futures
    - [ ] Export en différents formats (SVG, JPEG)
    - [ ] Niveaux de correction d'erreur personnalisables
    - [ ] Logo au centre du QR code
    - [ ] Thèmes de couleur prédéfinis
    - [ ] API REST pour génération de QR codes
    - [ ] Statistiques avancées avec graphiques
    - [ ] Base de données pour l'historique côté serveur

    ## 📄 Licence
    Copyright © [easycoding.fr](https://www.easycoding.fr)

    ## 👨‍💻 Support
    Pour toute question ou suggestion, visitez [easycoding.fr](https://www.easycoding.fr)
    ---
    Fait avec ❤️ par easycoding.fr
     
  •  Thread starter
  •  Admin
  • Update to V3

    1769207606741.webp



    📘 Générateur de QR Codes – Guide Utilisateur



    📌 Ce que vous pouvez faire
    • ✏️ Créer des QR codes pour texte, liens web, email, téléphone, SMS.
    • 👥 Partager vos informations : contact vCard, WiFi, localisation, événement calendrier.
    • 💳 Générer des QR pour paiements : PayPal, Lydia, Stripe, SEPA, crypto (Bitcoin / Ethereum / Lightning).
    • 📱 Créer des QR pour WhatsApp / Telegram, réseaux sociaux, applications (deeplink), OTP (Google Authenticator), codes produits (EAN) ou JSON.

    🧭 Types disponibles

    📝 Texte​
    🔗 URL​
    ✉️ Email​
    📱 Téléphone​
    💬 SMS​
    👤 Contact (vCard)​
    📶 WiFi​
    📍 Localisation​
    📅 Calendrier​
    💬 WhatsApp​
    ✈️ Telegram​
    💶 SEPA (EPC SCT)​
    💳 Paiement (lien PayPal/Lydia/Stripe)​
    🪙 Crypto (Bitcoin / Ethereum / Lightning)​
    📱 App (deeplink + App Store / Play Store / Web)​
    🌐 Social (LinkedIn / Instagram / TikTok / Facebook / Twitter)​
    🔐 Structuré (EAN/UPC ou JSON)​
    🔑 OTP (TOTP pour authentificateur)​

    🚀 Comment générer un QR
    1. Ouvrez la page du générateur dans votre navigateur.
    2. Choisissez le type de QR dans la grille (texte, URL, WiFi, etc.).
    3. Remplissez le formulaire affiché (les champs obligatoires sont indiqués).
    4. Cliquez sur « Générer le Code QR ».
    5. Votre QR apparaît :
      • 🖼️ Télécharger PNG pour enregistrer l’image.
      • 📋 Copier pour mettre l’image dans le presse-papiers.
      • 📝 Copier le contenu pour récupérer le texte / lien encodé.
      • 🗑️ Effacer pour masquer le QR et recommencer.
    💡 Conseils de saisie
    • 🔗 URL : mettez un lien complet (https://…).
    • 📶 WiFi : indiquez le SSID et le mot de passe si le réseau est protégé.
    • 💶 SEPA : IBAN, BIC et montant sont obligatoires.
    • 🔑 OTP : collez le secret Base32 + renseignez l’émetteur et le compte.
    • 🪙 Crypto : vérifiez l’adresse avant de partager le QR.
    🛠️ Si quelque chose ne marche pas
    • 🔄 Rechargez la page et réessayez.
    • ✅ Vérifiez les champs obligatoires et leur format (un message d’erreur apparaît en cas de problème).
    • 🌐 Si l’image ne se télécharge pas : essayez un autre navigateur ou désactivez les bloqueurs d’images / JS.
    🔒 Sécurité
    • 🧷 Ne partagez jamais vos secrets OTP ou vos clés privées.
    • 💸 Pour les paiements, testez d’abord avec un petit montant.
    • 🔐 Assurez-vous d’être en HTTPS avant de saisir des données sensibles.
     
    Similar content Most view View more
    Back
    Top