Problème avec fpdf

Résolu/Fermé
miasouki Messages postés 7 Date d'inscription mardi 25 novembre 2014 Statut Membre Dernière intervention 25 décembre 2014 - Modifié par jordane45 le 25/11/2014 à 13:07
 mia - 27 nov. 2014 à 18:10
Bonjour,
J'ai un problème avec fpdf je génère deux fichiers avec chaqu'un a un code qui s'incrémente automatiquement, mon code a toujours marcher mais je ne sais pas pourquoi l'un de mes fichier ne marche plus correctement au lieu d'incrémenté le code a chaque fois que je clique sur le bouton il s'incrémente chaque jour je ne sais pas pour quoi
merci de me donner quelques suggestions

voici mon code :
<?php
session_cache_limiter('private'); 
session_start();

require_once('test/fpdf.php');
require_once('test/pdfi/fpdi.php');
require('test/img.class.php');
require('barcode.php');

//parametre--------------------------------------------------------------------
$nombre_dossier = $_POST["nb"];
$type_dossier = $_POST["type"];
$page1="";
$page2="";
$postextX=0;
$postextY=0;
$poslogoX=0;
$poslogoY=0;
$couleur = array();
$prefix = "01";
if($type_dossier==1)
{
$prefix = "01";
$postextX=170;
$postextY=176;
$page1="page1vert";
$page2="page2vert";
$poslogoX=170;
$poslogoY=178;
array_push ($couleur, 255, 255, 255);
}
if($type_dossier==2)
{
$prefix = "07";
$postextX=170;
$postextY=172;
$poslogoX=170;
$poslogoY=175;
$page1="page1jaune";
$page2="page2jaune";
array_push ($couleur, 255, 255, 255);
}
//-----------------------------------------------------------------------------

//connexion base de données et recuperation de numero de dossier --------------
include_once '../../scripts/conn.php';
$sql = "SELECT code FROM codebarre where type='".$prefix."' FOR UPDATE";// 
$res = mysql_query($sql);
$ancien_num = mysql_result($res,0);
$sql = "update codebarre set code = code + $nombre_dossier where type='".$prefix."'";
mysql_query($sql);
//augmenter le nb de dossier generer et decrementer le nb restant-------------------------------
 
    if($_SESSION['type'] == 'ass'){
      if($prefix == "01"){ 
       $_SESSION['nb_vert_max_sess'] -= $nombre_dossier; 
       $_SESSION['nb_vert_gen_sess'] += $nombre_dossier; 
      }elseif($prefix == "07"){ 
       $_SESSION['nb_jaune_max_sess'] -= $nombre_dossier; 
       $_SESSION['nb_jaune_gen_sess'] += $nombre_dossier; 
      }
    }else{
            if($prefix == "01"){ 
      $_SESSION['nb_vert_sess'] -= $nombre_dossier;  
      $_SESSION['nb_gen_vert_sess'] += $nombre_dossier;  
      }elseif($prefix == "07"){ 
        $_SESSION['nb_jaune_sess'] -= $nombre_dossier; 
        $_SESSION['nb_gen_jaune_sess'] += $nombre_dossier; 
      }
    } 
          
//-----------------------------------------------------------------------------------------------
$sql = "select logo from logo_adh where num_adh = ".$_SESSION['login'];// 
$res = mysql_query($sql);
$logo = mysql_result($res,0);
//-----------------------------------------------------------------------------

$code = $ancien_num;
$pdf=new FPDF('L','mm','A4');
$pdf->Open();

for($i=0;$i<$nombre_dossier;$i++){
$code++;

//page1--------------------------------------------------------------
$pdf->addPage();
$pdf->Image('test/images/'.$page1.'.jpg',0,0,'297','210');
$pdf->SetFont("Arial","B",10);

//raison social imprimer dans tous les cas-----------------------------
$pdf->Text($postextX,$postextY,$_SESSION['rsc_adh']);

if($logo!="")
{
$pdf->Image('test/images/'.$logo,$poslogoX,$poslogoY);
}
//---------------------------------------------------------------------

//infos assuré imprimé dans le cas de dossier jaune assuré-------------
if( $_SESSION['type']=="ass")
{
if($type_dossier=="2"){
/*
$pdf->Text(260,90,$_SESSION['ref']); //numero d'immatriculaion
$pdf->Text(198,105,$_SESSION['nom'].'  '.$_SESSION['prenom']); //nom et prenom assuré
$pdf->Text(198,111,$_SESSION['adr1']); //adresse 1 assuré
$pdf->Text(198,116,$_SESSION['adr2']); //adresse 2 assuré
*/
$pdf->Text(215,78,$_SESSION['ref']); //numero d'immatriculaion
$pdf->Text(180,86,$_SESSION['nom'].'  '.$_SESSION['prenom']); //nom et prenom assuré
$pdf->Text(180,92,$_SESSION['adr1']); //adresse 1 assuré
//$pdf->Text(198,115,$_SESSION['adr2']); //adresse 2 assuré
$pdf->Text(180,99,$_SESSION['vil_par']); //ville assuré  $_SESSION['vil_par']
$pdf->Text(260,78,$_SESSION['cin_par']); //cin assuré $_SESSION['cin_par']
}
if($type_dossier=="1"){
$pdf->Text(215,80,$_SESSION['ref']); //numero d'immatriculaion
$pdf->Text(180,88,$_SESSION['nom'].'  '.$_SESSION['prenom']); //nom et prenom assuré
$pdf->Text(180,94,$_SESSION['adr1']); //adresse 1 assuré
//$pdf->Text(198,115,$_SESSION['adr2']); //adresse 2 assuré
$pdf->Text(180,101,$_SESSION['vil_par']); //ville assuré  
$pdf->Text(260,80,$_SESSION['cin_par']); //cin assuré 
}
}
//--------------------------------------------------------------------


//--------------------------------------------------------------------
  if(isset($_GET["text"])) $text=$_GET["text"];
  if(isset($_GET["format"])) $format=$_GET["format"];
  if(isset($_GET["quality"])) $quality=$_GET["quality"];
  if(isset($_GET["width"])) $width=$_GET["width"];
  if(isset($_GET["height"])) $height=$_GET["height"];
  if(isset($_GET["type"])) $type=$_GET["type"];
  if(isset($_GET["barcode"])) $barcode=$_GET["barcode"];
  $format = "JPEG";
  if (!isset ($text)) $text = 1;
  if (!isset ($type)) $type = 1;
  if (empty ($quality)) $quality = 100;
  if (empty ($width)) $width = 250;
  if (empty ($height)) $height = 40;
  if (!empty ($format)) $format = strtoupper ($format);
    else $format="PNG";
    
  
  $string_a_coder = $prefix.str_pad($code, 8, "0", STR_PAD_LEFT);//"0181496487"
  $barcode = htmlentities($string_a_coder,ENT_QUOTES,"ISO8859-1");
  
  
  switch ($type)
  {
    default:
      $type = 1;
    case 1:
      Barcode39 ($barcode, $width, $height, $quality, $format, $text, $couleur);
      break;          
  }
  
  $pdf->Image('temp/code'.$string_a_coder.'.jpeg',144,36);
  unlink('temp/code'.$string_a_coder.'.jpeg');
        //$pdf->ImagePngWithAlpha('temp/code.jpeg',142,38);
 //------
//page2--------------------------------------------------------------
$pdf->addPage();
$pdf->Image('test/images/'.$page2.'.jpg',0,0,'297','210');
//insertion de dossier dans la base----------------------------------------
if($_SESSION['type'] == 'ass')
{
$sql = "insert into dossier values('','".$string_a_coder."',now(),0,".$_SESSION['ref'].")";
}else{
$sql = "insert into dossier values('','".$string_a_coder."',now(),".$_SESSION['num_adh'].",0)";
}
mysql_query($sql);
//-------------------------------------------------------------------------
}
$pdf->Output();
?>




EDIT : Ajout des balises de code (jordane)

1 réponse

jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
25 nov. 2014 à 13:12
Bonjour,

1 - J'ai édité ton message pour y ajouter la coloration syntaxique (les balises de code..)
Merci d'y penser la prochaine fois.

2 - Tu nous dis :
au lieu d'incrémenté le code a chaque fois que je clique sur le bouton il s'incrémente chaque jour

... oui.. mais.... incrémenter.. Où ? Quoi ? ...
Il faudrait déjà que tu isoles la portion de code qui selon toi pose problème....
C'est quoi .. la requête ? ( si oui.. c'est lors de l' INSERT ? .. de l' UPDATE ? )
Et puis.. as tu essayé de faire des ECHO de tes différentes variables pour voir si elles correspondent à ce que tu attends ?
Et Lorsque tu appelles tes fonctions.. leur passes tu les paramètre dans le bon ordre ? (une inversion entre deux paramètres par exemple....) ??


0
merci jordane45 de ta réponse j'ai trouve la solution c'est juste un problème dans ma base de donnée
0