Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] Comment interdire l'impression, la copie et la sauvegarde d'un pdf ?

Posted by pheromix on 07/12/2016 08:38

Dans le controlleur j'ai ceci :

function testPdf(){
	
	$oResp = $this->getResponse("tcpdf") ;
				 
	//NEW PDF DOCUMENT
	$oResp->outputFileName = "liste_concepteur_matiere.pdf";
	$oResp->doDownload = false;
	$oResp->initPdf('L', 'mm', 'A4', null,	null);
	
	//settting
	$oResp->tcpdf->SetFont ('pdfahelvetica', '', 12) ;

	// set margins
	$oResp->tcpdf->SetMargins(20, 20, 20) ;
	$oResp->tcpdf->SetHeaderMargin(15) ;
	$oResp->tcpdf->SetFooterMargin(15) ;
	
	$oResp->tcpdf->SetAutoPageBreak(TRUE, 20) ;
	
	// set image scale factor
	$oResp->tcpdf->setImageScale(1.25);
	
	$oResp->tcpdf->AddPage();
	
	$iIdMatiere =  $_SESSION["id_matiere"] ;
	
	jClasses::inc ("sujet~questionSrv") ;
	jClasses::inc ("commun~toolsSrv") ;
	
	$oCurrentUser = jAuth::getUserSession() ;
	$oCurrentUser = toolsSrv::getByCondition ("utilisateurs~users", "login", $oCurrentUser->login) ;
	$oCurrentUser = $oCurrentUser [0] ;  
	
	$Questions = questionSrv::getAllQuestionsNotValidateByCondition ($iIdMatiere, null , $oCurrentUser->id, "id_question" , null,null, null) ;
	
	$zHtml = "";
	
	$i = 1 ;
	foreach ($Questions["toQuestions"] as $tab){
		if( $tab->id_type_question == 2){
			 $zHtml .= "<dt> ". $i ." - " . questionSrv::text_to_texthtml($tab->lib_question)  . " </dt>" ;
			
			 $zHtml .= "<dd>&nbsp;a)&nbsp;".	questionSrv::text_to_texthtml($tab->qcm_r1)."</dd>";	
			 $zHtml .= "<dd>&nbsp;b)&nbsp;". questionSrv::text_to_texthtml($tab->qcm_r2)."</dd>";	
			 $zHtml .= "<dd>&nbsp;c)&nbsp;". questionSrv::text_to_texthtml($tab->qcm_r3)."</dd>";	 
		
			if(trim($tab->qcm_r4) !="")
			$zHtml .= "<dd>&nbsp;d)&nbsp;".questionSrv::text_to_texthtml($tab->qcm_r4)."</dd>";	
		
			if(trim($tab->qcm_r5) !="")	
			$zHtml .= "<dd>&nbsp;e)&nbsp;".questionSrv::text_to_texthtml($tab->qcm_r5)."</dd>";	
			
			if(trim($tab->qcm_r6) !="")
			$zHtml .= "<dd>&nbsp;f)&nbsp;".questionSrv::text_to_texthtml($tab->qcm_r6)."</dd>"  ; 
		
		} else {
			$zHtml .= "<dt>". $i ." - " . questionSrv::text_to_texthtml($tab->lib_question)  . "</dt>";
			
			if($tab->epreuve_phase_sess != 1){
				$zHtml .= "<dd>&nbsp;a)&nbsp;VRAI</dd>";	
				$zHtml .= "<dd>&nbsp;b)&nbsp;FAUX</dd>";	
			}
		}
		
		$i++;
	}
	
	$oResp->tcpdf->writeHTML($zHtml, true, 0, true, 0); 

	return $oResp ;
}

Le fichier ainsi généré est un fichier temporaire téléchargé par le navigateur. Alors comment protéger le document généré contre l'impression, la copie et la sauvegarde ?

  [Opened] Comment interdire l'impression, la copie et la sauvegarde d'un pdf ?

Reply #1 Posted by laurentj on 07/12/2016 15:04

Bonjour,

comment protéger le document généré contre l'impression, la copie et la sauvegarde ?

C'est impossible. À partir du moment où quelque chose est visualisé dans un navigateur, il est forcément téléchargé (qu'il soit ensuite stocké en mémoire ou sur le disque), donc récupérable, copiable, sauvegardable.

C'est le propre du web. Si tu ne veux pas qu'un fichier, quel qu'il soit, ne soit pas copiable : ne le diffuse pas.

 
Page
  1. jDb : l'extension mysql n'est pas installée dans php pour le driver jDb configuré >
  2. Passage de variable entre _preCreate et _create // _preUpdate et _update >
  3. Mise à jour de Jelix 1.1.12 vers Jelix 1.2.8 : le moteur d'URL significatives ne fonctionne plus >
  4. Comment passer une variable javascript à un tableau dans un template ? >
  5. Re: Documentation complète en téléchargement pour consultation hors ligne ? >
  6. Le token du formulaire n'est pas valide avec jCommunity - Le retour >
  7. Je n'arrive pas à afficher la vue d'un module après submit d'une autre vue >
  8. Comment interdire l'impression, la copie et la sauvegarde d'un pdf ?