IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Générer des QRCodes dans une boucle


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de a028762
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 419
    Points : 537
    Points
    537
    Par défaut Générer des QRCodes dans une boucle
    Bonjour
    ayant découvert l'usage des QRCodes en PHP avec fichier,
    je voulais pousser plus loin mon avantage en l'utilisant dans une boucle.

    Hélas, la syntaxe utilisée génère le même fichier IMAGE malgré le nom différent. Bon en dehors de la plétore de fichiers temporaires générés, le fait de fabriquer un(s) fichier(s) ne va pas dans le sens de la réactivité.

    Donc , je fouille dans la bibliothèque PhpQrCode et je trouve une syntaxe sans fichier ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    foreach($Pieces as $Piece) {
    echo $Piece."<img src='".QRcode::png($Piece,false)."'><br />";
    }
    Ce code me sort une erreur sur le header (png !)
    et affiche la traduction de l'image en caractères binaires (forcément ésotériques).
    Quelqu'un a-t-il une idée de cet usage ?
    Olivier

  2. #2
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Points : 470
    Points
    470
    Par défaut
    tu devrais commencer par nous donner l'erreur que tu as !

    Si c'est un truc du genre "data already sent", c'est probablement que ta fonction génère directement le fichier et son header. Mais j'en dirais pas plus sans en savoir plus sur ton erreur.

  3. #3
    Membre confirmé Avatar de a028762
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 419
    Points : 537
    Points
    537
    Par défaut
    En effet , ca ira mieux comme ça !
    le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    foreach($Pieces as $Piece) {
                echo "<h5>".$Piece;
                echo "<img src='".QRcode::png($Piece,false)."'>";
                echo "</h5>";
    l'erreur
    Warning: Cannot modify header information -
    headers already sent by
    (output started at C:\Documents and Settings\All Users\Documents\racine\capol\standards\classes\fenetre.class.php:583)
    in C:\Documents and Settings\All Users\Documents\racine\phpqrcode\qrimage.php on line 35
    J'avais aussi tenté la création de fichiers (l'option de QRcode permettant un nom de fichier) mais ils étaient tous identiques ... sans doute le cache ...

  4. #4
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2010
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 144
    Points : 241
    Points
    241
    Par défaut
    Comme l'a dit Comode ta fonction QRcode::png() semble te retourner une image, il faut donc utiliser la classe QRCode d'une autre façon.

    En passant par un fichier PHP (genere_qrcode.php) intermédiaire :
    Code test : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    $content = urldecode($_GET['content']);
    QRCode::png($content, false);
    ?>

    Et ensuite, dans ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    foreach($Pieces as $Piece) {
        echo '<h5>'.$Piece;
        echo '<img src="genere_qrcode.php?content='.urlencode($Piece).'" />';
        echo '</h5>';
    }

Discussions similaires

  1. [MySQL] récupérer les dimensions des images dans une boucle while
    Par Navyel dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 26/08/2007, 11h09
  2. [FPDF] tracer des lignes dans une boucle
    Par marielaure2805 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 29/06/2007, 14h17
  3. Afectation des variables dans une boucle
    Par Yoni Lebene dans le forum Delphi
    Réponses: 3
    Dernier message: 05/01/2007, 18h52
  4. Générer des variables avec une boucle
    Par Anamelech dans le forum Delphi
    Réponses: 15
    Dernier message: 03/11/2006, 12h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo