La fleur
Utilisateur open source-
Compteur de contenus
321 -
Inscrit(e) le
-
Dernière visite
Tout ce qui a été posté par La fleur
-
La fleur a ajouté un message dans un sujet Récupérer les commentaires dans facture_pdf.php
j'obtiens ça
Parse error: syntax error, unexpected $end, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home4/f/floraclic/www/factures/invoice.php on line 352
-
0
-
-
La fleur a ajouté un message dans un sujet Récupérer les commentaires dans facture_pdf.php
Ce n'est qu'une erreur de ma part ne pas tenir compte
facture_pdf.php a aussi été modifiéé
Le saviez vous ?
-
0
-
-
La fleur a ajouté un message dans un sujet Récupérer les commentaires dans facture_pdf.php
Voici le code modifier de la page invoice.php
<?php
define('EURO', chr(128) );
define('EURO_VAL', 6.55957 );
class INVOICE extends FPDF
{
// variables privées
var $colonnes;
var $format;
var $angle=0;
// fonctions privées
function RoundedRect($x, $y, $w, $h, $r, $style = '')
{
$k = $this->k;
$hp = $this->h;
if($style=='F')
$op='f';
elseif($style=='FD' or $style=='DF')
$op='B';
else
$op='S';
$MyArc = 4/3 * (sqrt(2) - 1);
$this->_out(sprintf('%.2f %.2f m',($x+$r)*$k,($hp-$y)*$k ));
$xc = $x+$w-$r;
$yc = $y+$r;
$this->_out(sprintf('%.2f %.2f l', $xc*$k,($hp-$y)*$k ));
$this->_Arc($xc + $r*$MyArc, $yc - $r, $xc + $r, $yc - $r*$MyArc, $xc + $r, $yc);
$xc = $x+$w-$r;
$yc = $y+$h-$r;
$this->_out(sprintf('%.2f %.2f l',($x+$w)*$k,($hp-$yc)*$k));
$this->_Arc($xc + $r, $yc + $r*$MyArc, $xc + $r*$MyArc, $yc + $r, $xc, $yc + $r);
$xc = $x+$r;
$yc = $y+$h-$r;
$this->_out(sprintf('%.2f %.2f l',$xc*$k,($hp-($y+$h))*$k));
$this->_Arc($xc - $r*$MyArc, $yc + $r, $xc - $r, $yc + $r*$MyArc, $xc - $r, $yc);
$xc = $x+$r;
$yc = $y+$r;
$this->_out(sprintf('%.2f %.2f l',($x)*$k,($hp-$yc)*$k ));
$this->_Arc($xc - $r, $yc - $r*$MyArc, $xc - $r*$MyArc, $yc - $r, $xc, $yc - $r);
$this->_out($op);
}
function _Arc($x1, $y1, $x2, $y2, $x3, $y3)
{
$h = $this->h;
$this->_out(sprintf('%.2f %.2f %.2f %.2f %.2f %.2f c ', $x1*$this->k, ($h-$y1)*$this->k,
$x2*$this->k, ($h-$y2)*$this->k, $x3*$this->k, ($h-$y3)*$this->k));
}
function Rotate($angle,$x=-1,$y=-1)
{
if($x==-1)
$x=$this->x;
if($y==-1)
$y=$this->y;
if($this->angle!=0)
$this->_out('Q');
$this->angle=$angle;
if($angle!=0)
{
$angle*=M_PI/180;
$c=cos($angle);
$s=sin($angle);
$cx=$x*$this->k;
$cy=($this->h-$y)*$this->k;
$this->_out(sprintf('q %.5f %.5f %.5f %.5f %.2f %.2f cm 1 0 0 1 %.2f %.2f cm',$c,$s,-$s,$c,$cx,$cy,-$cx,-$cy));
}
}
function _endpage()
{
if($this->angle!=0)
{
$this->angle=0;
$this->_out('Q');
}
parent::_endpage();
}
// fonctions publiques
function sizeOfText( $texte, $largeur )
{
$index = 0;
$nb_lines = 0;
$loop = TRUE;
while ( $loop )
{
$pos = strpos($texte, "\n");
if (!$pos)
{
$loop = FALSE;
$ligne = $texte;
}
else
{
$ligne = substr( $texte, $index, $pos);
$texte = substr( $texte, $pos+1 );
}
$length = floor( $this->GetStringWidth( $ligne ) );
if ($largeur != 0) {$res = 1 + floor( $length / $largeur);} else {$res = 1 + floor( $length);}
$nb_lines += $res;
}
return $nb_lines;
}
// Cette fonction affiche en haut, a gauche,
// le nom de la societe dans la police Arial-12-Bold
// les coordonnees de la societe dans la police Arial-10
function addSociete( $adresse )
{
$x1 = 10;
$y1 = 8;
//Positionnement en bas
//$this->Image($logo,$x1,$y1,24);
//$this->SetXY( $x1, $y1 + 10);
$this->SetFont('Arial','B',12);
//$length = $this->GetStringWidth( $nom );
//$this->Cell( $length, 2, $nom);
$this->SetXY( $x1, $y1 + 12 );
$this->SetFont('Arial','',10);
$length = $this->GetStringWidth( $adresse );
//Coordonnées de la société
$lignes = $this->sizeOfText( $adresse, $length);
$this->MultiCell($length, 4, $adresse);
}
// Affiche en haut, a droite le libelle
// (FACTURE, DEVIS, Bon de commande, etc...)
// et son numero
// La taille de la fonte est auto-adaptee au cadre
function fact_dev( $libelle, $num )
{
$r1 = $this->w - 80;
$r2 = $r1 + 68;
$y1 = 6;
$y2 = $y1 + 2;
$mid = ($r1 + $r2 ) / 2;
$texte = $libelle . " N∞ : " . $num;
$szfont = 12;
$loop = 0;
while ( $loop == 0 )
{
$this->SetFont( "Helvetica", "B", $szfont );
$sz = $this->GetStringWidth( $texte );
if ( ($r1+$sz) > $r2 )
$szfont --;
else
$loop ++;
}
$this->SetLineWidth(0.1);
$this->SetFillColor(154, 154, 204);
$this->RoundedRect($r1, $y1, ($r2 - $r1), $y2, 2.5, 'DF');
$this->SetXY( $r1+1, $y1+2);
$this->Cell($r2-$r1 -1,5, $texte, 0, 0, "C" );
}
// Genere automatiquement un numero de devis
function addDevis( $numdev )
{
$string = sprintf("DEV%04d",$numdev);
$this->fact_dev( "Devis", $string );
}
// Genere automatiquement un numero de facture
function addFacture( $numfact )
{
$string = sprintf("FA%04d",$numfact);
$this->fact_dev( "Facture", $string );
}
// Affiche un cadre avec la date de la facture / devis
// (en haut, a droite)
function addDate( $date )
{
$r1 = $this->w - 80;
$r2 = $r1 + 68;
$y1 = 17;
$y2 = $y1;
$mid = $y1 + ($y2 / 2);
$this->Rect($r1, $y1, ($r2 - $r1), $y2, 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+3 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(15,5, "DATE", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+9 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(15,5,$date, 0,0, "C");
}
// Affiche un cadre avec les references du client
// (en haut, a droite)
function addClient( $ref )
{
$r1 = $this->w - 31;
$r2 = $r1 + 19;
$y1 = 17;
$y2 = $y1;
$mid = $y1 + ($y2 / 2);
$this->RoundedRect($r1, $y1, ($r2 - $r1), $y2, 3.5, 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+3 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(10,5, "CLIENT", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1 + 9 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(10,5,$ref, 0,0, "C");
}
// Affiche un cadre avec un numero de page
// (en haut, a droite)
function addPageNumber( $page )
{
$r1 = $this->w - 80;
$r2 = $r1 + 19;
$y1 = 17;
$y2 = $y1;
$mid = $y1 + ($y2 / 2);
$this->RoundedRect($r1, $y1, ($r2 - $r1), $y2, 3.5, 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+3 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(10,5, "PAGE", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1 + 9 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(10,5,$page, 0,0, "C");
}
// Affiche l'adresse du client
// (en haut, a droite)
function addClientCommentaires( $pdf_commentaires )
{
$this->SetFont( "Arial", "B", 8);
$r1 = 10;
$r2 = $r1 + 60;
$y1 = $this->h - 45;
$y2 = $y1+30;
$this->RoundedRect($r1, $y1, ($r2 - $r1), ($y2-$y1), 2.5, 'D');
$this->Line( $r1, $y1+4, $r2, $y1+4);
$this->SetXY( $r1+5, $y1);
$this->Cell(10,4, "Commentaires", 0, 0, "C" );
$this->SetFont( "Arial", "", 9);
$this->SetXY( $r1+0, $y2 - 23 );
$this->Cell(6,0, "".$pdf_commentaires."", 0, 0, "C" );
$this->SetXY( $r1+5, $y2 - 18 );
Fin
}
-
0
-
-
La fleur a ajouté un message dans un sujet Récupérer les commentaires dans facture_pdf.php
ça ne pourrait pas se situer par là ?
}
// Affiche l'adresse du client
// (en haut, a droite)
function addClientCommentaires( $pdf_commentaires )
{
$this->SetFont( "Arial", "B", 8);
$r1 = 10;
$r2 = $r1 + 60;
$y1 = $this->h - 45;
$y2 = $y1+30;
$this->RoundedRect($r1, $y1, ($r2 - $r1), ($y2-$y1), 2.5, 'D');
$this->Line( $r1, $y1+4, $r2, $y1+4);
$this->SetXY( $r1+5, $y1);
La fleur
-
0
-
-
La fleur a ajouté un message dans un sujet Récupérer les commentaires dans facture_pdf.php
Je ne peux pas le savoir je n'ai rien pour compter les lignes MOI
-
0
-
-
La fleur a ajouté un message dans un sujet Récupérer les commentaires dans facture_pdf.php
Voila ce que j'obtiens maintenant
Parse error: syntax error, unexpected $end, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home4/f/floraclic/www/factures/invoice.php on line 369
ah! bonjour et merci willy
-
0
-
-
La fleur a ajouté un message dans un sujet Récupérer les commentaires dans facture_pdf.php
Merci bcp voici ce que j'obtiens
Parse error: syntax error, unexpected $end, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home4/f/floraclic/www/factures/invoice.php on line 366
-
0
-
-
La fleur a ajouté un message dans un sujet Position des produits
Voila dans l'ordre demandé en plus !
<?php
// © PEEL.FR
define('FPDF_FONTPATH','../lib/class/pdf/font/');
include("../configuration.inc.php");
require("invoice.php");
if (!empty($_GET['timestamp']) && !empty($_GET['id']) && !empty($_GET['mode'])) {
// Chargement des variables pour afficher facture ou bons de commande
$timestamp = urldecode(htmlspecialchars($_GET['timestamp']));
$id = intval($_GET['id']);
$mode = htmlspecialchars($_GET['mode']);
$qid_commande = mysql_query("SELECT * FROM peel_commandes WHERE id = '$id' AND o_timestamp = '$timestamp'");
if (mysql_num_rows($qid_commande) > 0) {
$commande = mysql_fetch_object($qid_commande);
$qid_items = mysql_query("
SELECT
p.reference
,oi.nom_produit
,p.prix AS curr_prix
,oi.prix AS purchase_prix
,oi.quantite
,oi.tva
,oi.promotion
,oi.prix * oi.quantite AS total
,oi.comment
,oi.couleur
,oi.taille
,oi.option_prix
,oi.delivery_stock
FROM peel_commandes_articles oi
LEFT JOIN peel_produits p ON (oi.produit_id = p.id)
WHERE commande_id = '$id'
");
switch ($_GET['mode']) {
case "proforma" :
$libelle = PROFORMA;
$numero = $id;
$pdf_date = return_date_fr($commande->o_timestamp);
break;
case "invoice" :
$libelle = INVOICE;
$numero = $commande->numero;
if ($commande->a_timestamp != "" && $commande->a_timestamp != "0000-00-00" ) {$pdf_date = return_date_fr($commande->a_timestamp);} else {$pdf_date = date("d-m-Y");}
break;
}
// $pdf_logo = "logopeel.jpg";
$qid = mysql_query("SELECT * FROM peel_societe");
if ($qid) {
if (mysql_num_rows($qid) > 0) {
$ligne = mysql_fetch_object($qid);
if (!empty($ligne->societe)) { $pdf_societe = filtre_pdf($ligne->societe) ;} else {$pdf_societe = "" ;}
if (!empty($ligne->adresse)) { $pdf_adresse = filtre_pdf($ligne->adresse) ;} else {$pdf_adresse = "" ;}
if (!empty($ligne->code_postal)) { $pdf_codepostal = $ligne->code_postal ;} else {$pdf_codepostal = "" ;}
if (!empty($ligne->ville)) { $pdf_ville = filtre_pdf($ligne->ville) ;} else {$pdf_ville = "" ;}
if (!empty($ligne->pays)) { $pdf_pays = filtre_pdf($ligne->pays) ;} else {$pdf_pays = "" ;}
if (!empty($ligne->tel)) { $pdf_tel = $ligne->tel ;} else {$pdf_tel = "" ;}
if (!empty($ligne->fax)) { $pdf_fax = $ligne->fax ;} else {$pdf_fax = "" ;}
if (!empty($ligne->siren)) { $pdf_siret = "R.C.S. : ".$ligne->siren ;} else {$pdf_siret = "" ;}
if (!empty($ligne->tvaintra)) { $pdf_tvaintra = $ligne->tvaintra ;} else {$pdf_tvaintra = "" ;}
}
}
$pdf_numerodevis = $numero;
$pdf_client1 = filtre_pdf($commande->client_info1);
$pdf_client2 = filtre_pdf($commande->client_info2);
$pdf_paiement = filtre_pdf($commande->paiement);
$pdf_transport = filtre_pdf($commande->transport);
$pdf_tarif_paiement = $commande->tarif_paiement;
$transport = $commande->transport;
$pdf_expedition = $commande->cout_transport;
$pdf = new INVOICE( 'P', 'mm', 'A4' );
$pdf->Open();
$pdf->AddPage();
$pdf->addSociete( $pdf_societe."\n" .$pdf_adresse."\n" .$pdf_codepostal." ".$pdf_ville."\n".
$pdf_siret."\n"
);
if ($_GET['mode'] == "proforma") {
$pdf->fact_dev( "BDC ", $numero );
$pdf->temporaire( "Bon de commande" );
} else {
$pdf->fact_dev( "FACTURE ", $numero );
}
$pdf->addDate( $pdf_date);
$pdf->addClientAdresseFacturation($pdf_client1);
$pdf->addClientAdresseExpedition($pdf_client2);
$pdf->addReglement($pdf_paiement);
$pdf->addNumTVA($pdf_tvaintra);
$cols=array( "REFERENCE" => 23,
"DESIGNATION" => 78,
"QUANTITE" => 22,
"PU_TTC" => 26,
"MONTANT_TTC" => 30,
"TVA" => 11 );
$pdf->addCols( $cols);
$cols=array( "REFERENCE" => "L",
"DESIGNATION" => "L",
"QUANTITE" => "C",
"PU_TTC" => "R",
"MONTANT_TTC" => "R",
"TVA" => "C" );
$pdf->addLineFormat( $cols);
$pdf->addLineFormat($cols);
$y = 109;
$pdf_total_ttc = 0;
$pdf_total_ht = 0;
if ($qid_items) {
if (mysql_num_rows($qid_items)) {
while ($prod = mysql_fetch_array($qid_items)) {
if ($prod['couleur'] !=') {$couleur = "\n\r".COLOR." : ".stripslashes($prod['couleur]);} else {$couleur = "";}
if ($prod['taille'] !=') {$taille = "\n\r".SIZE." : ".stripslashes($prod['taille]);} else {$taille = "";}
if ($prod['delivery_stock'] !=') {$delivery = "\n\r".DELIVERY_STOCK." : ".stripslashes($prod['delivery_stock]);} else {$delivery = "";}
if ($prod['comment'] !=') {$comment = "\n\r".COMMENT." : ".stripslashes($prod['comment]);} else {$comment = "";}
if ($prod['option_prix'] !=0) {$perso = "\n\r".OPTION_PRIX." : ".$prod['option_prix']." EUR";} else {$perso = "";}
$line = array(
"REFERENCE" => $prod["reference"],
"DESIGNATION" => filtre_pdf($prod["nom_produit"]).vb($couleur).vb($taille).vb($delivery).vb($comment).vb($perso),
"QUANTITE" => $prod["quantite"],
"PU_TTC" => fprix($prod["purchase_prix"]),
"MONTANT_TTC" => fprix($prod["total"]),
"TVA" => number_format($prod["tva"],1)
);
$size = $pdf->addLine( $y, $line );
$pdf_total_ttc += $prod['total'];
$pdf_total_ht += $prod['total'] / (1+$prod['tva']/100);
$y += $size + 2;
}
}
}
$pdf_tva = $pdf_total_ttc - $pdf_total_ht;
$params = array(
"TotalHt" => $pdf_total_ht,
"TVA" => $pdf_tva,
"TotalTtc" => $pdf_total_ttc,
"portTTC" => $pdf_expedition,
"tarifPaiement" => $pdf_tarif_paiement,
);
if ($_GET['mode'] == "proforma") {
$pdf->addCadreSignature();
}
$pdf->addTVAs($params);
$pdf->addCadreEurosFrancs();
$pdf->Output();
} else {
echo "NO HACKING (-:!";
}
} else {
echo "NO HACKING (-:!";
}
?>
Invoice maintenant
<?php
define('EURO', chr(128) );
define('EURO_VAL', 6.55957 );
class INVOICE extends FPDF
{
// variables privées
var $colonnes;
var $format;
var $angle=0;
// fonctions privées
function RoundedRect($x, $y, $w, $h, $r, $style = '')
{
$k = $this->k;
$hp = $this->h;
if($style=='F')
$op='f';
elseif($style=='FD' or $style=='DF')
$op='B';
else
$op='S';
$MyArc = 4/3 * (sqrt(2) - 1);
$this->_out(sprintf('%.2f %.2f m',($x+$r)*$k,($hp-$y)*$k ));
$xc = $x+$w-$r ;
$yc = $y+$r;
$this->_out(sprintf('%.2f %.2f l', $xc*$k,($hp-$y)*$k ));
$this->_Arc($xc + $r*$MyArc, $yc - $r, $xc + $r, $yc - $r*$MyArc, $xc + $r, $yc);
$xc = $x+$w-$r ;
$yc = $y+$h-$r;
$this->_out(sprintf('%.2f %.2f l',($x+$w)*$k,($hp-$yc)*$k));
$this->_Arc($xc + $r, $yc + $r*$MyArc, $xc + $r*$MyArc, $yc + $r, $xc, $yc + $r);
$xc = $x+$r ;
$yc = $y+$h-$r;
$this->_out(sprintf('%.2f %.2f l',$xc*$k,($hp-($y+$h))*$k));
$this->_Arc($xc - $r*$MyArc, $yc + $r, $xc - $r, $yc + $r*$MyArc, $xc - $r, $yc);
$xc = $x+$r ;
$yc = $y+$r;
$this->_out(sprintf('%.2f %.2f l',($x)*$k,($hp-$yc)*$k ));
$this->_Arc($xc - $r, $yc - $r*$MyArc, $xc - $r*$MyArc, $yc - $r, $xc, $yc - $r);
$this->_out($op);
}
function _Arc($x1, $y1, $x2, $y2, $x3, $y3)
{
$h = $this->h;
$this->_out(sprintf('%.2f %.2f %.2f %.2f %.2f %.2f c ', $x1*$this->k, ($h-$y1)*$this->k,
$x2*$this->k, ($h-$y2)*$this->k, $x3*$this->k, ($h-$y3)*$this->k));
}
function Rotate($angle,$x=-1,$y=-1)
{
if($x==-1)
$x=$this->x;
if($y==-1)
$y=$this->y;
if($this->angle!=0)
$this->_out('Q');
$this->angle=$angle;
if($angle!=0)
{
$angle*=M_PI/180;
$c=cos($angle);
$s=sin($angle);
$cx=$x*$this->k;
$cy=($this->h-$y)*$this->k;
$this->_out(sprintf('q %.5f %.5f %.5f %.5f %.2f %.2f cm 1 0 0 1 %.2f %.2f cm',$c,$s,-$s,$c,$cx,$cy,-$cx,-$cy));
}
}
function _endpage()
{
if($this->angle!=0)
{
$this->angle=0;
$this->_out('Q');
}
parent::_endpage();
}
// fonctions publiques
function sizeOfText( $texte, $largeur )
{
$index = 0;
$nb_lines = 0;
$loop = TRUE;
while ( $loop )
{
$pos = strpos($texte, "\n");
if (!$pos)
{
$loop = FALSE;
$ligne = $texte;
}
else
{
$ligne = substr( $texte, $index, $pos);
$texte = substr( $texte, $pos+1 );
}
$length = floor( $this->GetStringWidth( $ligne ) );
if ($largeur != 0) {$res = 1 + floor( $length / $largeur) ;} else {$res = 1 + floor( $length);}
$nb_lines += $res;
}
return $nb_lines;
}
// Cette fonction affiche en haut, a gauche,
// le nom de la societe dans la police Arial-12-Bold
// les coordonnees de la societe dans la police Arial-10
function addSociete( $adresse )
{
$x1 = 10;
$y1 = 8;
//Positionnement en bas
//$this->Image($logo,$x1,$y1,24);
//$this->SetXY( $x1, $y1 + 10);
$this->SetFont('Arial','B',12);
//$length = $this->GetStringWidth( $nom );
//$this->Cell( $length, 2, $nom);
$this->SetXY( $x1, $y1 + 12 );
$this->SetFont('Arial','',10);
$length = $this->GetStringWidth( $adresse );
//Coordonnées de la société
$lignes = $this->sizeOfText( $adresse, $length) ;
$this->MultiCell($length, 4, $adresse);
}
// Affiche en haut, a droite le libelle
// (FACTURE, DEVIS, Bon de commande, etc...)
// et son numero
// La taille de la fonte est auto-adaptee au cadre
function fact_dev( $libelle, $num )
{
$r1 = $this->w - 80;
$r2 = $r1 + 68;
$y1 = 6;
$y2 = $y1 + 2;
$mid = ($r1 + $r2 ) / 2;
$texte = $libelle . " N∞ : " . $num;
$szfont = 12;
$loop = 0;
while ( $loop == 0 )
{
$this->SetFont( "Helvetica", "B", $szfont );
$sz = $this->GetStringWidth( $texte );
if ( ($r1+$sz) > $r2 )
$szfont --;
else
$loop ++;
}
$this->SetLineWidth(0.1);
$this->SetFillColor(154, 154, 204);
$this->RoundedRect($r1, $y1, ($r2 - $r1), $y2, 2.5, 'DF');
$this->SetXY( $r1+1, $y1+2);
$this->Cell($r2-$r1 -1,5, $texte, 0, 0, "C" );
}
// Genere automatiquement un numero de devis
function addDevis( $numdev )
{
$string = sprintf("DEV%04d",$numdev);
$this->fact_dev( "Devis", $string );
}
// Genere automatiquement un numero de facture
function addFacture( $numfact )
{
$string = sprintf("FA%04d",$numfact);
$this->fact_dev( "Facture", $string );
}
// Affiche un cadre avec la date de la facture / devis
// (en haut, a droite)
function addDate( $date )
{
$r1 = $this->w - 80;
$r2 = $r1 + 68;
$y1 = 17;
$y2 = $y1 ;
$mid = $y1 + ($y2 / 2);
$this->Rect($r1, $y1, ($r2 - $r1), $y2, 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+3 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(15,5, "DATE", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+9 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(15,5,$date, 0,0, "C");
}
// Affiche un cadre avec les references du client
// (en haut, a droite)
function addClient( $ref )
{
$r1 = $this->w - 31;
$r2 = $r1 + 19;
$y1 = 17;
$y2 = $y1;
$mid = $y1 + ($y2 / 2);
$this->RoundedRect($r1, $y1, ($r2 - $r1), $y2, 3.5, 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+3 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(10,5, "CLIENT", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1 + 9 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(10,5,$ref, 0,0, "C");
}
// Affiche un cadre avec un numero de page
// (en haut, a droite)
function addPageNumber( $page )
{
$r1 = $this->w - 80;
$r2 = $r1 + 19;
$y1 = 17;
$y2 = $y1;
$mid = $y1 + ($y2 / 2);
$this->RoundedRect($r1, $y1, ($r2 - $r1), $y2, 3.5, 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+3 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(10,5, "PAGE", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1 + 9 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(10,5,$page, 0,0, "C");
}
// Affiche l'adresse du client
// (en haut, a droite)
function addClientAdresseFacturation( $pdf_facturation )
{
$r1 = $this->w - 200;
$r2 = $r1 + 68;
$y1 = 40;
$y2 = $y1+38;
$this->Rect($r1, $y1, ($r2 - $r1), ($y2-$y1), 'D');
$this->SetXY( $r1, $y1);
$this->MultiCell( 60, 4, "Adresse de facturation :\n".$pdf_facturation);
}
function addClientAdresseExpedition( $pdf_facturation2 )
{
$r1 = $this->w - 80;
$r2 = $r1 + 68;
$y1 = 40;
$y2 = $y1+38;
$this->Rect($r1, $y1, ($r2 - $r1), ($y2-$y1), 'D');
$this->SetXY( $r1, $y1);
$this->MultiCell( 60, 4, "Adresse d'expÈdition :\n".$pdf_facturation2);
}
// Affiche un cadre avec le règlement (chèque, etc...)
// (en haut, a gauche)
function addReglement( $mode )
{
$r1 = 10;
$r2 = $r1 + 68;
$y1 = 80;
$y2 = $y1+10;
$mid = $y1 + (($y2-$y1) / 2);
$this->Rect($r1, $y1, ($r2 - $r1), ($y2-$y1), 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + ($r2-$r1)/2 -5 , $y1+1 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(10,4, "MODE DE REGLEMENT", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 -5 , $y1 + 5 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(10,5,$mode, 0,0, "C");
}
// Affiche un cadre avec la date d'echeance
// (en haut, au centre)
function addEcheance( $date )
{
$r1 = 80;
$r2 = $r1 + 40;
$y1 = 80;
$y2 = $y1+10;
$mid = $y1 + (($y2-$y1) / 2);
$this->RoundedRect($r1, $y1, ($r2 - $r1), ($y2-$y1), 2.5, 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + ($r2 - $r1)/2 - 5 , $y1+1 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(10,4, "DATE D'ECHEANCE", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 - 5 , $y1 + 5 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(10,5,$date, 0,0, "C");
}
// Affiche un cadre avec le numero de la TVA
// (en haut, au droite)
function addNumTVA($tva)
{
$this->SetFont( "Helvetica", "B", 10);
$r1 = $this->w - 80;
$r2 = $r1 + 68;
$y1 = 80;
$y2 = $y1+10;
$mid = $y1 + (($y2-$y1) / 2);
$this->Rect($r1, $y1, ($r2 - $r1), ($y2-$y1), 'D');
$this->Line( $r1, $mid, $r2, $mid);
$this->SetXY( $r1 + 16 , $y1+1 );
$this->Cell(40, 4, "TVA Intracommunautaire", '', '', "C");
$this->SetFont( "Helvetica", "", 10);
$this->SetXY( $r1 + 16 , $y1+5 );
$this->Cell(40, 5, $tva, '', '', "C");
}
// Affiche une ligne avec des reference
// (en haut, a gauche)
function addReference($ref)
{
$this->SetFont( "Helvetica", "", 10);
$length = $this->GetStringWidth( "References : " . $ref );
$r1 = 10;
$r2 = $r1 + $length;
$y1 = 92;
$y2 = $y1+5;
$this->SetXY( $r1 , $y1 );
$this->Cell($length,4, "Reference : " . $ref);
}
// trace le cadre des colonnes du devis/facture
function addCols( $tab )
{
global $colonnes;
$r1 = 10;
$r2 = $this->w - ($r1 * 2) ;
$y1 = 100;
$y2 = $this->h - 50 - $y1;
$this->SetXY( $r1, $y1 );
$this->Rect( $r1, $y1, $r2, $y2, "D");
$this->Line( $r1, $y1+6, $r1+$r2, $y1+6);
$colX = $r1;
$colonnes = $tab;
while ( list( $lib, $pos ) = each ($tab) )
{
$this->SetXY( $colX, $y1+2 );
$this->Cell( $pos, 1, $lib, 0, 0, "C");
$colX += $pos;
$this->Line( $colX, $y1, $colX, $y1+$y2);
}
}
// mémorise le format (gauche, centre, droite) d'une colonne
function addLineFormat( $tab )
{
global $format, $colonnes;
while ( list( $lib, $pos ) = each ($colonnes) )
{
if ( isset( $tab["$lib"] ) )
$format[ $lib ] = $tab["$lib"];
}
}
function lineVert( $tab )
{
global $colonnes;
reset( $colonnes );
$maxSize=0;
while ( list( $lib, $pos ) = each ($colonnes) )
{
$texte = $tab[ $lib ];
$longCell = $pos -2;
$size = $this->sizeOfText( $texte, $longCell );
if ($size > $maxSize)
$maxSize = $size;
}
return $maxSize;
}
function addLine( $ligne, $tab )
{
global $colonnes, $format;
$ordonnee = 10;
$maxSize = $ligne;
reset( $colonnes );
while ( list( $lib, $pos ) = each ($colonnes) )
{
$longCell = $pos -2;
$texte = $tab[ $lib ];
$length = $this->GetStringWidth( $texte );
$tailleTexte = $this->sizeOfText( $texte, $length );
$formText = $format[ $lib ];
$this->SetXY( $ordonnee, $ligne-1);
$this->MultiCell( $longCell, 4 , $texte, 0, $formText);
if ( $maxSize < ($this->GetY() ) )
$maxSize = $this->GetY() ;
$ordonnee += $pos;
}
return ( $maxSize - $ligne );
}
function addTotalHt( $total_ht )
{
$r1 = $this->w - 31;
$r2 = $r1 + 19;
$y1 = 100;
$y2 = $y1;
$mid = $y1 + ($y2 / 2);
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1+3 );
$this->SetFont( "Helvetica", "B", 10);
$this->Cell(10,5, "Total H.T.", 0, 0, "C");
$this->SetXY( $r1 + ($r2-$r1)/2 - 5, $y1 + 9 );
$this->SetFont( "Helvetica", "", 10);
$this->Cell(10,5,$total_ht."Ä H.T.", 0,0, "C");
}
// Ajoute une remarque (en bas, a gauche)
function addRemarque($remarque)
{
$this->SetFont( "Helvetica", "", 10);
$length = $this->GetStringWidth( "Remarque : " . $remarque );
$r1 = 10;
$r2 = $r1 + $length;
$y1 = $this->h - 45.5;
$y2 = $y1+5;
$this->SetXY( $r1 , $y1 );
$this->Cell($length,4, "Remarque : " . $remarque);
}
// trace le cadre des TVAs
function addCadreTVAs()
{
$this->SetFont( "Arial", "B", 8);
$r1 = 10;
$r2 = $r1 + 20;
$y1 = $this->h;
$y2 = $y1+5;
$this->Line( $r1, $y1+4, $r2, $y1+4);
$this->Line( $r1+5, $y1+4, $r1+5, $y2); // avant BASE HT
$this->Line( $r1+27, $y1, $r1+27, $y2); // avant REMISE
$this->Line( $r1+63, $y1, $r1+63, $y2); // avant % TVA
$this->Line( $r1+75, $y1, $r1+75, $y2); // avant PORT
$this->Line( $r1+91, $y1, $r1+91, $y2); // avant TOTAUX
$this->SetXY( $r1+9, $y1);
$this->Cell(10,4, "TOTAL HT");
$this->SetX( $r1+63 );
$this->Cell(10,4, "TVA");
$this->SetX( $r1+78 );
$this->Cell(10,4, "PORT");
$this->SetX( $r1+100 );
$this->Cell(10,4, "TOTAUX");
$this->SetFont( "Arial", "B", 6);
$this->SetXY( $r1+93, $y2 - 13 );
$this->Cell(6,0, "T.T.C :");
$this->SetXY( $r1+93, $y2 - 8 );
$this->Cell(6,0, "H.T. :");
$this->SetXY( $r1+93, $y2 - 3 );
$this->Cell(6,0, "T.V.A. :");
}
function addCadreSignature()
{
$this->SetFont( "Arial", "B", 10);
$r1 = 10;
$r2 = $r1 + 60;
$y1 = $this->h - 45;
$y2 = $y1+30;
$this->RoundedRect($r1, $y1, ($r2 - $r1), ($y2-$y1), 2.5, 'D');
$this->Line( $r1, $y1+4, $r2, $y1+4);
$this->SetXY( $r1+5, $y1);
$this->Cell(10,4, "ACCORD POUR COMMANDE");
$this->SetFont( "Arial", "B", 6);
$this->SetXY( $r1+5, $y2 - 23 );
$this->Cell(6,0, "Date :");
$this->SetXY( $r1+5, $y2 - 18 );
$this->Cell(6,0, "Mention (Bon pour accord) :");
$this->SetXY( $r1+5, $y2 - 13 );
$this->Cell(6,0, "Signature :");
}
// trace le cadre des totaux
function addCadreEurosFrancs()
{
$r1 = $this->w - 60;
$r2 = $r1 + 50;
$y1 = $this->h - 45;
$y2 = $y1+30;
$this->RoundedRect($r1, $y1, ($r2 - $r1), ($y2-$y1), 2.5, 'D');
}
function addTVAs( $params )
{
$this->SetFont('Arial','',6);
$prix = array();
$totalHT = $params["TotalHt"];
$totalTVA = $params['TVA'] ;
$totalTTC = $params['TotalTtc'];
$tarifPaiement = $params['tarifPaiement'];
$y = 261;
$pTTC = sprintf("%0.2f", $params["portTTC"]);
$totalTTC = $totalHT + $totalTVA +$pTTC + $tarifPaiement;
$re = $this->w - 52;
$rf = $this->w - 26;
$y1 = $this->h - 40;
$this->SetFont( "Arial", "B", 6);
$this->SetXY( $re, $y1-5 );
$this->Cell( 17,4, "TOTAL HT :");
$this->Cell( 17,4, sprintf("%0.2f",$totalHT)." Ä", '', '', 'R');
$this->SetXY( $re, $y1 );
$this->Cell( 17,4, "TVA :");
$this->Cell( 17,4, sprintf("%0.2f", $totalTVA)." Ä", '', '', 'R');
$this->SetXY( $re, $y1+5 );
$this->Cell( 17,4, "Frais de port:");
$this->Cell( 17,4, sprintf("%0.2f", $pTTC)." Ä", '', '', 'R');
$this->SetXY( $re, $y1+10 );
$this->Cell( 17,4, "SupplÈment paiement:");
$this->Cell( 17,4, sprintf("%0.2f", $tarifPaiement)." Ä", '', '', 'R');
$this->SetXY( $re, $y1+15 );
$this->Cell( 17,4, "Net ‡ payer :");
$this->Cell( 17,4, sprintf("%0.2f", $totalTTC)." Ä", '', '', 'R');
}
// Permet de rajouter un commentaire (Devis temporaire, REGLE, DUPLICATA, ...)
// en sous-impression
// ATTENTION: APPELER CETTE FONCTION EN PREMIER
function temporaire( $texte )
{
$this->SetFont('Arial','B',50);
$this->SetTextColor(203,203,203);
$this->Rotate(45,55,190);
$this->Text(55,190,$texte);
$this->Rotate(0);
$this->SetTextColor(0,0,0);
}
}
?>
Voila et avec ça on doit arriver à faire qque chose ?
-
0
-
-
La fleur a ajouté un message dans un sujet Position des produits
La page positions.php
<?
include("../configuration.inc.php");
necessite_identification();
necessite_priv("admin");
$DOC_TITLE = "Gestion des positions";
include("modeles/haut.php");
$start = vn($_REQUEST['start']);// Détermine la variable start (début de page)
switch (vb script:return confirm('êtes-vous sûr de vouloir supprimer la position ?');" title="Supprimer <?=$ligne['nom_'.$_SESSION['langue'].''] ?>" href=<?=$_SERVER['PHP_SELF]?>?mode=suppr&id=<?=$ligne['id'] ?>"><img src="images/b_drop.png" alt="drop" border="0"></a></td>
<td class=petit><a class=petit title="Modifier ce position" href="<?=$_SERVER['PHP_SELF']?>?mode=modif&id=<?=$ligne['id'] ?>"><?=$ligne['nom_'.$_SESSION['langue'].''] ?></a></td>
<td class=petit>
<?php
if ($ligne['image'] != "") {echo "<img src=.$repertoire_images.$ligne['image]." width=\"100\" />";}
?>
</td>
<td align=center class=petit><?=$ligne['ordre'] ?></td>
<td align=center>
<?php
$query_lang = mysql_query("SELECT * FROM peel_langues WHERE etat = '1' AND lang <> '".$_SESSION['langue']."' GROUP BY lang");
if($query_lang) {
if (mysql_num_rows($query_lang)) {
echo "<select name=\"langue\" class=\"formulaire1\" onChange=\"gototraduire(this.options[this.selectedIndex].value)\">";
echo "<option value=\"\">Choisir la langue :</option>";
while($res_lang = mysql_fetch_array($query_lang)) {
echo "<option value=\"mode=traduire&id=".$ligne['id']."&langue=.$res_lang['lang]."\">".stripslashes($res_lang['nom_'.$_SESSION['langue'].''])."</option>";
}
echo "</select>";
}
}
?>
</td>
</tr>
<?
$i++;
}
}
echo "</table>";
}
function supprime_fichier($id, $file) {
/* Supprime le produit spécificié par $id. Il faut supprimer le produit
* puis les entrées correspondantes de la table produits_categories. */
global $the_path ;
/* Charge les infos du produit. */
switch($file) {
case "image" :
$sql = "SELECT image FROM peel_positions WHERE id = '$id'";
$res = mysql_query($sql);
$file = mysql_fetch_row($res);
mysql_query("UPDATE peel_positions SET image = '' WHERE id = '$id'");
break;
}
@unlink($the_path.$file[0]);
?>
<div class="normal">
Le fichier <b><?=$file[0]?> </b>a été effacé du serveur.
</div>
<?
}
?>
En espérant qu'elle vous sera utile sinon je la remets ...
La fleurs
Pourquoi parler des choses qui fachent Paulana !!!!
Ah oui je parle des instructions spéciales c'est ça
Y a t il une solution ?
La fleur
-
0
-
-
La fleur a ajouté un message dans un sujet Position des produits
Bonjour willy,
Je ne connais pas cette page suis je censé l'avoir avec ma version 2.9?
Question :
Comment faire pour que le textarea de mes commande soit repris dans les factures PDF ?
Moi dans le textarea ils inscrivent la date de livraison souhaité et un message
Lorsqu'ils impriment la facture en PDF ils n'ont pas confirmation de la date de livraison
Y a t il un moyen ?
PS : J'ai un PR de deux et tout seul SVP !
-
0
-
-
La fleur a ajouté un message dans un sujet Mis en maintenance mon site mais peut plus y acceder
Paulana
ça me rappelle qque chose ce message...!!!
La fleur
-
0
-
-
La fleur a ajouté un message dans un sujet Le message le plus osé du forum !
C'est sympa merci les gars...
-
0
-
-
La fleur a ajouté un message dans un sujet skin
Mais willy j'ai juste demandé la signification du mot skin il est hors de question de changer le site maintenant
Par contre je veux qu'il rapporte maintenant et beaucoup.....un peu comme le votre !!!!!je plaisante ce que je voudrais c'est la réécriture de mes url sur mon site ça oui je le voudrais alors je fais quoi et comment à votre avis ??
La fleur
-
0
-
-
La fleur a ajouté un message dans un sujet skin
Bonjour willy
Tout dabord je redis ce que j'ai écris hier car je ne suis pas sur que ça a été lu
Merci à vous et à Paulana pour tous les immenses services rendus et votre disponibilité
Voila (je ne drague pas !!!)
Sincèrement me croyez vous capable de le faire ??
il faut un htacces ?
Sinon avez vous une idée du coût ?
Merci
-
0
-
-
La fleur a ajouté un message dans un sujet e mail
Mais celle ci je n'ai pas à la toucher c'est celle client qu'il faut que je modifie
-
0
-
-
La fleur a ajouté un message dans un sujet skin
Ah daccord je n'avais jamais entendu ce terme les autres oui mais pas celui ci
Comment fait on pour les URL rewriting ? Je pourrais moi avec ma versio 2.9 ?
merci de la réponse
-
0
-
-
La fleur a ajouté un sujet dans Module PEEL Premium pour PEEL SHOPPING
skinC'est quoi un skin ?? bon inutile de vous moquer svp !!!
et je signe en plus ...
La fleur
- 15 réponses
- 5 530 vues
-
La fleur a ajouté un message dans un sujet e mail
J'ai bien compris et je vais le faire mais je ne peux pas effacer cette adresse à l'endroit ou je l'aurais inscrite au dépard ?
-
0
-
-
La fleur a ajouté un message dans un sujet e mail
peut être c'est mon genre ce type d'erreurs mais où aurais-je été inscrire cette adresse ??
-
0
-
-
La fleur a ajouté un message dans un sujet Apres deux ans d'utilisation
Si je peux me permettre je souhaiterais ajouter mon grand merci à moi a Paulana et willy pour leur présence et les immenses services rendus
Merci encore à tous les deux
La Fleur
-
0
-
-
La fleur a ajouté un message dans un sujet e mail
Je pense maintenant que le client en reçoit un et moi aussi
-
0
-
-
La fleur a ajouté un message dans un sujet e mail
Je pense que la ligne de code de willy est celle ci
/* Mail à l'adresse de facturation */
mail($com->email,SUBJECT_EMAIL_BILLING_CB,MSG_EMAIL_BILLING_CB,"FROM:$support");
adapté aux C.B
Non ?
-
0
-
-
La fleur a ajouté un message dans un sujet e mail
C'est ce que j'ai dans ça
function email_commande_cb(&$commandeid) {
-
0
-
-
La fleur a ajouté un message dans un sujet e mail
Moi voila ce que j'ai
function email_commande_cb(&$commandeid) {
global $wwwroot;
global $site;
global $support;
global $langfile;
$result = mysql_query("SELECT email, o_timestamp, montant FROM peel_commandes WHERE id ='".$commandeid."'");
$com = mysql_fetch_object($result);
$timestamp = $com->o_timestamp;
$montant = $com->montant;
# Mail d'information envoyé à l'administrateur - ENVOYER EN LANGUE FRANCAISE UNIQUEMENT
mail(
$support,
"Nouvelle commande par carte bancaire sur votre site web $site",
"Une commande portant le numéro $commandeid vient d'être enregistrée sur le site $site.",
"FROM:$support");
if (file_exists($langfile)){
require ($langfile);
}
/* Mail à l'adresse de facturation */
mail($com->email,SUBJECT_EMAIL_BILLING_CB,MSG_EMAIL_BILLING_CB,"FROM:$support");
}
function verifier_authentification($email, $mot_passe) {
$requete = "
SELECT *
FROM peel_utilisateurs
WHERE email = '$email' AND mot_passe = '".md5($mot_passe)."'
";
$qid = mysql_query($requete) or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());;
if (mysql_num_rows($qid) > 0) {
return mysql_fetch_array($qid);
}
else {
return;
}
}
function mydate($format, $publictime)
{
$sec = substr($publictime, 12, 2);
$min = substr($publictime, 10, 2);
$hour = substr($publictime, 8, 2);
$day = substr($publictime, 6, 2);
$month = substr($publictime, 4, 2);
$year = substr($publictime, 0, 4);
return date($format, mktime($hour, $min, $sec, $month, $day, $year));
}
function filtre_pdf($chaine) {
$chaine = str_replace("√®","Ë",$chaine);
$chaine = str_replace("é","È",$chaine);
$chaine = str_replace("√©","È",$chaine);
$chaine = str_replace("√","‡",$chaine);
$chaine = str_replace("'","'",$chaine);
$chaine = str_replace("¬∞","∞",$chaine);
return $chaine;
}
?>
-
0
-
-
La fleur a ajouté un message dans un sujet e mail
Bonjour,
Quand moi je me fais une commande "bidon" je reçois les 2
Mais lors d'une vrai commande client je reçois les deux aussi
Et comme vous je me demande si le client a bien eu le sien
That is my problem
Mais vous recevez vous aussi "l'exemplaire client"?????? ou n'est ce pas normal ???
-
0
-