[FPDF]
Posté : 23 nov. 2016, 17:38
Bonjour,
J'ai crée un script php qui génere un pdf composé de multi cellule en majorité mais le problème c'est qu'elle se coupe en deux quand elle passe d'une page à l'autre.
Le set auto page break ne correspond pas à mes attentes car elle se coupe quand même mais plus haut et je ne peut pas le désactiver car mes multicell sont de taille variable.
Voici mon code HTML
https://mega.nz/#!r0Mj3QIa!0OfiiDZJYPST ... RHA14FmWuA
Merci par avance,
J'ai crée un script php qui génere un pdf composé de multi cellule en majorité mais le problème c'est qu'elle se coupe en deux quand elle passe d'une page à l'autre.
Le set auto page break ne correspond pas à mes attentes car elle se coupe quand même mais plus haut et je ne peut pas le désactiver car mes multicell sont de taille variable.
Voici mon code HTML
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />
<title>Lettre type</title>
<link rel="stylesheet" href="css/bootstrap.css">
<script language='javascript'>
function ConfirmerEffacement()
{
if (confirm("Est tu sur de vouloir éffacer toute les données rentré dans le formulaire ?"))
{
formulaire.submit();
}
}
</script>
</head>
<body>
<form class="form-horizontal center-block" method="post" target="_blank" action="traitement.php">
<div class="row">
<fieldset class="col-lg-12">
<div class="form-group">
<label for="DOSSIER" class="control-label">Dossier</label>
<input type="text" id="DOSSIER" name="DOSSIER" class="form-control" placeholder="Ex : MACHIN" required="required" />
</div>
<div class="form-group">
<label for="RG" class="control-label">N° R.G</label>
<input type="text" id="RG" name="RG" class="form-control" placeholder="Ex : 00/A/00000" required="required" />
</div>
<div class="form-group">
<label class="control-label">Tribunal</label>
<br />
<select name="TRIBUNAL" class="form-control">
<option value="Oublie pas de sélectionnez andouille">Séléctionnez</option>
<option>Auch</option>
<option>Condom</option>
</select>
</div>
<div class="form-group">
<label for="NAMEDOC1" class="control-label">Rubrique 1</label>
<br />
<select name="NAMEDOC1" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC1" name="CONTENTDOC1" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="NAMEDOC2" class="control-label">Rubrique 2</label>
<br />
<select name="NAMEDOC2" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC2" name="CONTENTDOC2" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="NAMEDOC3" class="control-label">Rubrique 3</label>
<br />
<select name="NAMEDOC3" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC3" name="CONTENTDOC3" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="NAMEDOC4" class="control-label">Rubrique 4</label>
<br />
<select name="NAMEDOC4" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC4" name="CONTENTDOC4" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="NAMEDOC5" class="control-label">Rubrique 5</label>
<br />
<select name="NAMEDOC5" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC5" name="CONTENTDOC5" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="NAMEDOC6" class="control-label">Rubrique 6</label>
<br />
<select name="NAMEDOC6" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC6" name="CONTENTDOC6" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="NAMEDOC7" class="control-label">Rubrique 7</label>
<br />
<select name="NAMEDOC7" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC7" name="CONTENTDOC7" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="NAMEDOC8" class="control-label">Rubrique 8</label>
<br />
<select name="NAMEDOC8" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC8" name="CONTENTDOC8" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="NAMEDOC9" class="control-label">Rubrique 9</label>
<br />
<select name="NAMEDOC9" class="form-control">
<option value="">Séléctionnez</option>
<option>LOGEMENT</option>
<option>SANTE</option>
<option>ENTOURAGE</option>
<option>PROJET DE VIE</option>
<option>BUDGET</option>
<option>SITUATION PATRIMONIALE</option>
<option>PROCEDURE ET ACTIONS EN COURS</option>
<option>SUIVI TUTELAIRE ET RELATION AVEC LE MJPM</option>
<option>SITUATION PROFESSIONELLE</option>
</select>
<br />
<textarea id="CONTENTDOC9" name="CONTENTDOC9" class="form-control" placeholder="Votre contenu ...." rows="10"></textarea>
</div>
<div class="form-group">
<label for="DATELETTRE" class="control-label">Date du document</label>
<input type="text" id="DATELETTRE" name="DATELETTRE" class="form-control" placeholder="Ex : JJ/MM/AAAA" required="required" />
</div>
<button type="reset" class="btn btn-danger btn-lg" onClick='ConfirmerEffacement()'>
<span class="glyphicon glyphicon-warning-sign" aria-hidden="true"></span> Réinitialise le formualire <span class="glyphicon glyphicon-warning-sign" aria-hidden="true"></span>
</button>
<br />
<br />
<button type="submit" class="btn btn-success btn-lg">
<span class="glyphicon glyphicon-hand-right" aria-hidden="true"></span> Envoyé la sauce pour créer un super PDF de la mort qui tue <span class="glyphicon glyphicon-hand-left" aria-hidden="true"></span>
</button>
</fieldset>
</div>
</form>
</body>
</html>
Le PHP : <?php
$h = ceil((strlen($_POST['ADRESSE'])) / 126 * 2.9); // Déclaration de la variable $h
if ($h <= 5) { // On set le minimum de l'adresse pour éviter les négatifs
$h = 5;
}
else {
}
require('fpdf.php');
$pdf = new FPDF(); // Debut du pdf
$pdf->SetAuthor('Mme.D\'AQUINO Karine'); // je sais pas trop a quoi ça sert mais je le met quand même
$pdf->SetCreator('M.MURCIA Charly');
$pdf->SetSubject('INVENTAIRE');
$pdf->SetTitle('INVENTAIRE DE DEBUT DE MISSION '.$_POST['NOM'].' '.$_POST['PRENOM'].'');
$pdf->SetLineWidth(0.5);
$pdf->AddPage(); // On ajoute la prémiere page
$pdf->Image('logo.jpg'); // On ajoute l'entête
$pdf->SetFont('Times','B',14);
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->Cell(0,5,utf8_decode('INVENTAIRE ÉTABLI LE '.$_POST['DATEINVENTAIRE'].''),0,2,'C');
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->Cell(0,5,utf8_decode("Par Mme D'AQUINO Karine, mandataire judiciaire à la protection des majeurs"),0,2,'C');
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->SetFont('Times','',11);
$pdf->MultiCell(0,5,utf8_decode('En présence de '.$_POST['CIVILITER'].''.$_POST['NOM'].' '.$_POST['PRENOM'].', la personne protégé'),0);
if ($_POST['PRESENCEINVENTAIRETEMOIN'] == 0) { // On débute la chaîne de conditions selon le choix utilisateur
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->MultiCell(0,5,utf8_decode('En présence de deux témoins : '.$_POST['CIVILITERTEMOIN1'].''.$_POST['TEMOIN1NOM'].' '.$_POST['TEMOIN1PRENOM'].' et '.$_POST['CIVILITERTEMOIN2'].''.$_POST['TEMOIN2NOM'].' '.$_POST['TEMOIN2PRENOM'].''),0);
$pdf->MultiCell(0,5,utf8_decode(''),0);
}
elseif ($_POST['PRESENCEINVENTAIRETEMOIN'] == 1) {
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->MultiCell(0,5,utf8_decode('En présence de '.$_POST['CIVILITERCOMIS'].''.$_POST['NOMCOMIS'].' '.$_POST['PRENOMCOMIS'].', commissaire-priseur'),0);
$pdf->MultiCell(0,5,utf8_decode(''),0);
}
elseif ($_POST['PRESENCEINVENTAIRETEMOIN'] == 2) {
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->MultiCell(0,5,utf8_decode('En présence de '.$_POST['CIVILITERHUISSIER'].''.$_POST['NOMHUISSIER'].' '.$_POST['PRENOMHUISSIER'].', huissier de justice'),0);
$pdf->MultiCell(0,5,utf8_decode(''),0);
}
else {
}
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->SetFont('Times','B',14);
$pdf->Cell(0,5,utf8_decode("MAJEUR PROTÉGÉ"),0,2,'C');
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->SetFont('Times','',11);
$pdf->MultiCell(0,5,utf8_decode('N° DE RG : '.$_POST['RG'].''),0);
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->MultiCell(0,5,utf8_decode('Nom : '.$_POST['NOM'].''),0);
$pdf->MultiCell(0,5,utf8_decode(''),0);
if ($_POST['NOMUSAGE'] == '') {
}
else {
$pdf->MultiCell(0,5,utf8_decode('Nom d\'usage : '.$_POST['NOMUSAGE'].''),0);
$h += 10;
$pdf->MultiCell(0,5,utf8_decode(''),0);
}
$pdf->MultiCell(0,5,utf8_decode('Prénom : '.$_POST['PRENOM'].''),0);
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->MultiCell(0,5,utf8_decode('Adresse : '.$_POST['ADRESSE'].''),0);
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->MultiCell(0,5,utf8_decode('Situation : '.$_POST['SITUATION'].''),0);
if ($_POST ['REGIME'] == 'Aucun') {
}
else {
$pdf->MultiCell(0,5,utf8_decode(''),0);
$pdf->MultiCell(0,5,utf8_decode('Régime matrimonial institué : '.$_POST['REGIME'].''),0);
$h += 10;
}
$pdf->Rect(10,69.8,190,$h += 60); // On trace le premier réctangle dépendant de la taille adresse
$pdf->MultiCell(0,10,utf8_decode(''),'LR');
$pdf->SetFont('Times','B',14);
$pdf->Cell(0,5,utf8_decode("MESURE DE PROTECTION"),'LR',2,'C');
$pdf->MultiCell(0,5,utf8_decode(''),'LR');
$pdf->SetFont('Times','',11);
$pdf->MultiCell(0,5,utf8_decode('Nature de la mesure : '.$_POST['MESURE'].''),'LR');
$pdf->MultiCell(0,5,utf8_decode(''),'LR');
$pdf->MultiCell(0,5,utf8_decode('Date du jugement : '.$_POST['DATEJUGEMENT'].''),'LR');
$pdf->MultiCell(0,5,utf8_decode(''),'LR');
$pdf->MultiCell(0,5,utf8_decode('Nom du mandataire : Mme.D\'AQUINO Karine'),'LR');
$pdf->MultiCell(0,5,utf8_decode(''),'LR');
$pdf->MultiCell(0,5,utf8_decode('Adresse : BP 70045 32110 NOGARO'),'LR');
$pdf->MultiCell(0,5,utf8_decode(''),'LR');
$pdf->MultiCell(0,5,utf8_decode('Téléphone : 06 74 19 40 51'),'LR');
$pdf->MultiCell(0,5,utf8_decode(''),'LR');
$pdf->MultiCell(0,5,utf8_decode('Adresse de méssagerie : [email protected]'),'LR');
$pdf->MultiCell(0,5,utf8_decode(''),'LRB');
// Fin de la prémière page
$pdf->AddPage(); // On ajoute la deuxième page
$pdf->Output('I','INVENTAIRE DE DEBUT DE MISSION '.$_POST['NOM'].' '.$_POST['PRENOM'].'.pdf');
?>
Je vous épargne le CSS je ne pense pas qu'ils vous soit trés utile mais je vous met un éxemple du fichier génerer :https://mega.nz/#!r0Mj3QIa!0OfiiDZJYPST ... RHA14FmWuA
Merci par avance,