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. Comment interdire l'impression, la copie et la sauvegarde d'un pdf ?