2017-06-21 2 views
0

J'ai un petit problème, j'utilise une librairie pi_barcode.php pour la génération du code barre, et fpdf pour pouvoir exploiter le code à barres et l'imprimer, cependant, j'ai un problème avec la librairie pi_barcode .php, c 'Est-ce que si je mets mon fichier à la racine du serveur ça marche mais l'enregistrement de l'image se fait à la racine, mais si mon fichier est mis dans un dossier, alors il en veut plus pour l'enregistrer mais il me le montre tout de même. Donc, fondamentalement, ce que je veux, c'est pouvoir enregistrer l'image dans un dossier spécifique et non à la racine du serveur.FPDF && BARCODE

_cb.php:

require('pi_barcode.php'); 

    $code = $_GET['c'] ; 

// ***** Création de l'objet 
     $objCode = new pi_barcode(); 

     // ***** Hauteur, [Largeur] 
     $objCode->setSize(25); 

     // ***** Autres arguments 
     $objCode->setText(''); 
     $objCode->hideCodeType(); 


     $objCode -> setType('C39'); 
     $objCode -> setCode($code); 
     //Affichage // 
     $objCode -> showBarcodeImage(); 
     //Enregistrement// 
     $objCode->writeBarcodeFile($code . '.png'); 

Le code ci-dessus enregistre l'image à la racine du serveur et si le fichier est seulement à la racine du serveur.

Si le fichier _cb.php se trouve dans un dossier, l'enregistrement n'est plus effectué et uniquement l'affichage.

Voici le code, pi_barcode.php

/* Show image */ 

function showBarcodeImage() 
     { 
      $this->checkCode(); 
      $this->encode(); 

      if ($this->FILETYPE == 'GIF') 
      { 
       Header("Content-type: image/gif"); 
       imagegif($this->IH); 
      } 
      elseif ($this->FILETYPE == 'JPG') 
      { 
       Header("Content-type: image/jpeg"); 
       imagejpeg($this->IH); 
      } 
      else 
      { 
       Header("Content-type: image/png"); 
       imagepng($this->IH); 
      } 
     } 

     /** 
     * Save Image 
     */ 
     function writeBarcodeFile($file) 
     { 
      $this->checkCode(); 
      $this->encode(); 

      if ($this->FILETYPE == 'GIF')  imagegif($this->IH, $file); 
      elseif ($this->FILETYPE == 'JPG') imagejpeg($this->IH, $file); 
      else        imagepng($this->IH, $file); 
     } 

Le code ci-dessous sont les fonctions appelées pour l'affichage et l'enregistrement du code à barres

Merci beaucoup pour votre aide!

Répondre

0

Vous devez écrire le chemin complet dans

$objCode->writeBarcodeFile($code . '.png'); 

comme

$path  = '/myfolder/'; 
$filename = 'picture'; 
$objCode->writeBarcodeFile($path.filename. '.png'); 
+0

J'ai fait les changements, et aucun changement – Nosperato

+0

Ensuite, vous faites fausse route. Quel est votre chemin actuellement utilisé pour enregistrer le fichier? – Bernhard