Jump to content
Ana Gauna

Bloqueio de download de imagem e bloqueio de impressão

Recommended Posts

Eu já tentei diversas vezes, mas ainda não consegui fazer funcionar.  Inclusive já alterei o arquivo .htaccess mas isso não funcionou.  Estou tentando criar um bloqueio em página de site online, para bloquear o download de imagens, bloquear o download de fotografias.  Estou tentando também criar o bloqueio de impressão da tela de um site, para fazer o control p parar de funcionar em determinada página do site.    Vi na internet sites que tem isso funcionando direito.  Eu ainda não consegui criar.  Alguém sabe como fazer?   Eu sei um pouco de PHP, este mês comprei 3 livros novos de PHP que estou estudando para tentar me ajudar nas minhas dúvidas...

Boa noite

Share this post


Link to post
Share on other sites

Boa noite!

 

o PHP trata o back-end, eu acho pouco provável que sua solução possa vir do PHP. Acredito que o javascript/jquery/angular poderia lhe ajudar nessa questão. Entretanto, lembre que com um simples printscreen a foto pode ser recortada e salva.

Share this post


Link to post
Share on other sites

Tanto com os recursos do PHP quanto do apache você só poderá limitar acesso aos arquivos do servidor.

Hora que se esses limites tem suas condições no caso do apache uma vez que forem severas nem  próprio código fonte do website poderá acessar como de exemplo imagens.

Nem mesmo o browser poderá renderizar o conteúdo de acordo com essas limitações.

 

No máximo o que dará para fazer é limitar a ativação de eventos usando javascript. Entretanto o browser funciona de um jeito o SO de outro e não existe bloqueio realmente capaz de executar tal coisa.

Não importa o que faça sempre será possível obter qualquer dado/arquivo renderizado pelo navegador.

Share this post


Link to post
Share on other sites
18 horas atrás, Alaerte Gabriel disse:

Boa noite!

 

o PHP trata o back-end, eu acho pouco provável que sua solução possa vir do PHP. Acredito que o javascript/jquery/angular poderia lhe ajudar nessa questão. Entretanto, lembre que com um simples printscreen a foto pode ser recortada e salva.

 

Vi uns sites na internet que isso está bloqueado. A pessoa que olha o site não consegue imprimir nada e não consegue fazer também o download de nenhuma imagem do site.  Eu estou querendo colocar uma página do meu site assim, mas ainda não consegui fazer isso funcionar.

Share this post


Link to post
Share on other sites
15 horas atrás, Omar~ disse:

Tanto com os recursos do PHP quanto do apache você só poderá limitar acesso aos arquivos do servidor.

Hora que se esses limites tem suas condições no caso do apache uma vez que forem severas nem  próprio código fonte do website poderá acessar como de exemplo imagens.

Nem mesmo o browser poderá renderizar o conteúdo de acordo com essas limitações.

 

No máximo o que dará para fazer é limitar a ativação de eventos usando javascript. Entretanto o browser funciona de um jeito o SO de outro e não existe bloqueio realmente capaz de executar tal coisa.

Não importa o que faça sempre será possível obter qualquer dado/arquivo renderizado pelo navegador.

 

Existe sites na internet que esse bloqueio na impressão funciona, a pessoa que vê o site não consegue imprimir a página do site. E a pessoa que vê uma imagem ou vê uma fotografia, também não consegue fazer o download da imagem do site.  Não sei qual tecnologia de programação web, tem essa função de bloqueio.  Eu estou querendo criar esse tipo de bloqueio em uma página, dentro do meu site.  

Alguém sabe como esse bloqueio dentro de uma página web é feito? Eu já testei algumas coisas, mas que não funcionaram.

 

Share this post


Link to post
Share on other sites
19 horas atrás, Alaerte Gabriel disse:

Boa noite!

 

o PHP trata o back-end, eu acho pouco provável que sua solução possa vir do PHP. Acredito que o javascript/jquery/angular poderia lhe ajudar nessa questão. Entretanto, lembre que com um simples printscreen a foto pode ser recortada e salva.

 

Tenho livros de JavaScript, não achei nada a esse respeito.  Não sei JQuery, vou começar a estudar ele.  Não sei Angular, mas já comecei a estudar ele.  Vou procurar na busca do Google em Angular se tem algo falando de bloqueio em página de sites.  Obrigado.

 

Share this post


Link to post
Share on other sites
Em 27/08/2019 at 15:22, Ana Gauna disse:

 

Vi uns sites na internet que isso está bloqueado. A pessoa que olha o site não consegue imprimir nada e não consegue fazer também o download de nenhuma imagem do site.

Por favor poste o link para um destes sites.

Share this post


Link to post
Share on other sites
Em 27/08/2019 at 14:45, Ana Gauna disse:

 

Tenho livros de JavaScript, não achei nada a esse respeito.  Não sei JQuery, vou começar a estudar ele.  Não sei Angular, mas já comecei a estudar ele.  Vou procurar na busca do Google em Angular se tem algo falando de bloqueio em página de sites.  Obrigado.

 

Ola boa noite @Ana Gauna veja se é isso que você precisa ele faz bloqueio não sei se para download ele vai fazer mais teste ai qualquer coisa poste ai se deu certo ou não


<script type="text/javascript">
 var t_cel,tc_ln;
 if(document.addEventListener){
   document.addEventListener("keydown",keyCapt,false);
   document.addEventListener("keyup",keyCapt,false);
   document.addEventListener("keypress",keyCapt,false);
 }else{
   document.attachEvent("onkeydown",keyCapt);
   document.attachEvent("onkeyup",keyCapt);
   document.attachEvent("onkeypress",keyCapt);
 }
 function keyCapt(e){
   if(typeof window.event!="undefined"){
    var e = (window.event) ? window.event : event;
   }
   if(e.type=="keydown"){
    if (e.keyCode==123) {
    e.returnValue = false;
    e.cancelBubble = true;
    e.keyCode = 0;
    e.stopPropagation();
    e.preventDefault();
    };
   }else if(e.type=="keyup"){
   }else if(e.type=="keypress"){
   }
 }
 </script>
<script type="text/javascript">
function click() {
if (event.button==2||event.button==3) {
oncontextmenu='return false';
}
}
function keypresed() {;
}
document.onmousedown=click
document.oncontextmenu = new Function("return false;")
</script>
<script type='text/javascript'>
var isCtrl = false;
document.onkeyup=function(e)
{
    if(e.which == 17)
    isCtrl=false;
}
document.onkeydown=function(e)
{
    if(e.which == 17)
    isCtrl=true;
    if((e.which == 85 || e.which == 83) && (isCtrl == true))
    {
        return false;
    }
}
var isNS = (navigator.appName == "Netscape") ? 1 : 0;
if(navigator.appName == "Netscape") document.captureEvents(Event.MOUSEDOWN||Event.MOUSEUP);
function mischandler(){
    return false;
}
function mousehandler(e){
    var myevent = (isNS) ? e : event;
    var eventbutton = (isNS) ? myevent.which : myevent.button;
    if((eventbutton==2)||(eventbutton==3)) return false;
}
document.oncontextmenu = mischandler;
document.onmousedown = mousehandler;
document.onmouseup = mousehandler;
</script>

Eu uso aqui e me ajuda muito...

Espero ter ajudado ai..

Share this post


Link to post
Share on other sites
Em 26/08/2019 at 19:14, Ana Gauna disse:

Eu já tentei diversas vezes, mas ainda não consegui fazer funcionar.  Inclusive já alterei o arquivo .htaccess mas isso não funcionou.  Estou tentando criar um bloqueio em página de site online, para bloquear o download de imagens, bloquear o download de fotografias.  Estou tentando também criar o bloqueio de impressão da tela de um site, para fazer o control p parar de funcionar em determinada página do site.    Vi na internet sites que tem isso funcionando direito.  Eu ainda não consegui criar.  Alguém sabe como fazer?   Eu sei um pouco de PHP, este mês comprei 3 livros novos de PHP que estou estudando para tentar me ajudar nas minhas dúvidas...

Boa noite

@Ana Gauna Tem uma solução para o seu problema

Bom aqui esta o script completo para que seja bloqueada a tela para não copiar nada 

e também para não imprimir

se for dar ctrl+p a impressão não abre

<script type="text/javascript">
  // Combinação para bloquear ctrl+c ctrl+v
 var t_cel,tc_ln;
 if(document.addEventListener){
   document.addEventListener("keydown",keyCapt,false);
   document.addEventListener("keyup",keyCapt,false);
   document.addEventListener("keypress",keyCapt,false);
 }else{
   document.attachEvent("onkeydown",keyCapt);
   document.attachEvent("onkeyup",keyCapt);
   document.attachEvent("onkeypress",keyCapt);
 }
 function keyCapt(e){
   if(typeof window.event!="undefined"){
    var e = (window.event) ? window.event : event;
   }
   if(e.type=="keydown"){
    if (e.keyCode==123) {
    e.returnValue = false;
    e.cancelBubble = true;
    e.keyCode = 0;
    e.stopPropagation();
    e.preventDefault();
    };
   }else if(e.type=="keyup"){
   }else if(e.type=="keypress"){
   }
 }
 </script>
<script type="text/javascript">
function click() {
if (event.button==2||event.button==3) {
oncontextmenu='return false';
}
}
function keypresed() {;
}
document.onmousedown=click
document.oncontextmenu = new Function("return false;")
</script>
<script type='text/javascript'>
var isCtrl = false;
document.onkeyup=function(e)
{
    if(e.which == 17)
    isCtrl=false;
}
document.onkeydown=function(e)
{
    if(e.which == 17)
    isCtrl=true;
    if((e.which == 85 || e.which == 83) && (isCtrl == true))
    {
        return false;
    }
}
var isNS = (navigator.appName == "Netscape") ? 1 : 0;
if(navigator.appName == "Netscape") document.captureEvents(Event.MOUSEDOWN||Event.MOUSEUP);
function mischandler(){
    return false;
}
function mousehandler(e){
    var myevent = (isNS) ? e : event;
    var eventbutton = (isNS) ? myevent.which : myevent.button;
    if((eventbutton==2)||(eventbutton==3)) return false;
}
document.oncontextmenu = mischandler;
document.onmousedown = mousehandler;
document.onmouseup = mousehandler;

 // Combinação de teclas CTRL + P e bloquear a ejeção no navegador
var isCtrl = false;
document.onkeyup=function(e){
if(e.which == 17) isCtrl=false;
}
document.onkeydown=function(e){
if(e.which == 17) isCtrl=true;
if(e.which == 80 && isCtrl == true){    

return false;
}
}


</script>

Já para a impressão pelo navegador usar css

se a pessoa for imprimir ele traz uma tela em braco sem nada para impressão


<style media="print">.noprint {

DISPLAY: none

}

</style>

Já nas paginas que tu não quer se seja impressa coloca assim dentro do <body>

<body class="noprint">

Sucesso pra ti espero que seja o que você esteja querendo...

 

Espero ter ajudado em alguma coisa ;)

Share this post


Link to post
Share on other sites

No console temos acesso a tudo que foi renderizado pelo browser.... Mesmo que exista qualquer tipo de bloqueio nenhum script pode interferir nessa questão...

 

Em outro caso podemos fazer o download do código e de seus elementos, o browser irá baixar tudo que é visível em tela e algumas coisas a mais, ou seja tudo que ele renderizou.... Mesmo que exista qualquer tipo de bloqueio nenhum script pode interferir nessa questão...

Ele só não fará download de recursos do servidor, que reitera que se bloquear pelo servidor o browser não irá executar pois não é entregue a ele.

Share this post


Link to post
Share on other sites
13 horas atrás, Maujor disse:

Usar JavaScript ou CSS não causa qualquer efeito de bloqueio.
Basta desabilitar JavaScript (CSS) no navegador e desbloqueia tudo.
A uma frase sábia que diz:
"Não quer que seu conteúdo seja copiado não publique".

 

De acordo...

Share this post


Link to post
Share on other sites
Em 12/09/2019 at 11:19, Alaerte Gabriel disse:

 

De acordo...

 

O bloqueio que eu quero fazer é esse = https://receitasdeamigas.com.br/%e2%99%a5%ef%b8%8f-pastel-de-tres-ingredientes-com-uma-massa-que-desmancha-na-boca-%f0%9f%a4%a4/?fbclid=IwAR1I6nYaq58fQH5BReYbB9TYPen_gjpUAvjOs5pA9mVggEeH-GmTBLoYhyY

nesse site não se consegue selecionar nada, quero criar algo assim em algumas páginas do meu site.

 

Hoje eu achei isso (ainda vou testar) = https://developer.mozilla.org/en-US/docs/Web/CSS/user-select

 

E vou testar as dicas que vocês me deram acima.  obrigado.  bom dia

 

Share this post


Link to post
Share on other sites
1 hora atrás, Ana Gauna disse:

 

Pois é né, o bloqueio como nós já dissemos não funciona é algo completamente ineficaz....

56500794_724983317896589_278415254034894

 

Está aí a imagem diretamente do website citado.

Olha o link:

https://receitasdeamigas.com.br/wp-content/f15d/uploads/receitasdeamigas.com.br/2019/04/56500794_724983317896589_2784152540348940288_n-960x400.jpg

 

Se quiser posto prints também da impressão do mesmo (Ctrl + P).

Share this post


Link to post
Share on other sites

Omar~

uma das coisas que eu quero fazer e ainda não consegui fazer, está dentro desse site,  nele não se consegue fazer a seleção de trechos das palavras, nele o botão direito do mouse não funciona em itens que pertence ao site, eu gostei disso, e ainda não consegui criar.  

 

 

Nesse site do link acima o control p  funciona, mas eu já vi sites meses atrás em que o control p não funciona, não lembro qual site é agora.  

 

 

 

 

Share this post


Link to post
Share on other sites

@Ana Gauna

 

Não sei qual é a necessidade de se querer bloquear algo, do mesmo jeito que nós desenvolvedores quebramos a cabeça para construis a segurança, existe um outro tipo de desenvolvedor que quebra a cabeça para quebrar tal segurança e uma coisa que sempre é bom lembrar é que o melhor mesmo é difundir o conhecimento.

 

O Código que você precisa ou que deve te ajudar segue abaixo:

 

<!DOCTYPE HTML>
<html>
    <head>
    <!-- Meta -->
        <meta charset="UTF-8">
        <meta name="author" content="Felipe Guedes Coutinho Hashimoto">
        <meta name="description" content="Desabilitando Botão Direito do Mouse e Seleção de Texto e CTRL+P">
        <meta name="keywords" content="Desabilita Botao Seleção Texto Impressao">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <script language=JavaScript>
        window.onload = function() {
            document.onkeydown = function(e) {
                var code = e.keyCode || e.which;
                if (e.ctrlKey && (code == 80 || code == 112)) {
                    e.preventDefault && e.preventDefault();
                    return false;
                }
            }
        }
        var mensagem="";
        function clickIE() {
            if (document.all) {
                (mensagem);
                return false;
            }
        }
        function clickNS(e) {
        if (document.layers || (document.getElementById && !document.all)) {
            if (e.which==2 || e.which==3) {
                (mensagem);
                return false;
            }
            }
        }
        if (document.layers) {
            document.captureEvents(Event.MOUSEDOWN);
            document.onmousedown=clickNS;
        } else {
            document.onmouseup=clickNS;document.oncontextmenu=clickIE;
        }
        document.oncontextmenu=new Function("return false")
        </script>
    </head>
<body onselectstart="return false">
<hr>
<center>Bloquear seleção de texto do site
<hr>
<br>
<p>Para evitar que o usuário selecione o texto exposto na página,
inclua na TAG BODY o código (onselectstart="return false").
</p>
<p>
Tente SELECIONAR o TEXTO com o MOUSE ( FUNCIONOU? )
</p>
<p>
Tente clicar com o BOTÃO DIREITO do MOUSE ( FUNCIONOU? )
</p>
<p>
Tente imprimir a página usando CTRL + P ( FUNCIONOU? )
</p>
</center>
</body>
</html

Espero ter ajudado.

 

Att.

Felipe Coutinho

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Kaio Kdesigner
      Oi Pessoal!
       
      Estou editando um tema, e ai as imagens dos thumbsnails estão ficando distorcidas.
       
      Cada categoria tem um tamanho diferente de imagem, mas ai elas ficam destorcidas dentro do tamanho (meio confuso né?)
       
      ta ficando assim: https://screenshot.net/gxvqc9y
       
      Como que faço para colocar a imagem dentro do tamanho, ex: 150x150, sem q ela fique distorcida??
    • By alexdcarvalho
      Como colocar uma imagem no html/css sem que a qualidade dela não decaia? Eu fiz os procedimentos abaixo, achando que a coisa pudesse melhorar, porém a imagem horizontalmente fica esticada, toda a resolução se perde. O que eu quero é justamente fazer com que o width fique completo e o height no 300px, porém com uma qualidade boa.
       
       A resolução original da imagem é de 1920x1279.
       
      .img {     width: 100%;     height: 300px;     background-size: cover;     background-position: center right; }
    • By DanielF
      Pessoal Eu Recentemente estava fazendo um gerador de qr-code, e preciso criar um botão que quando a pessoa clique apareça para poder baixar/fazerdownload da imagem gerada, pode me ajuda? to preso nisso faz tempo, e se puderem podem Organizar o codigo para mim? 
       
       
       
       
       
       
       
      <!DOCTYPE html>
      <html>
      <head>
          <title>QR-Code</title>
          <style type="text/css">
              #qrcode {
                  border: 1pt solid gray;
                  display: inline-block;
              }
          </style>
      </head>
      <body>
          <center>
              <input type="text" name="qrtexto" id="qrtexto" onkeypress="gerarqr();" onkeyup="gerarqr();"><br>
              <br>
              <button onclick="gerarqr();" on>Gerar</button>
              <button onclick="limpar();" on>Limpar</button>
          </center>
          <br>
          <br>
      <center>
          <div id="qrcode"></div>
      </center>
      <br>
      <center>
      <button onclick="baixar();">Baixar (Em Breve)</button>
      </center>
      <script src="qrcode.min.js"></script>
      <script>
          qrcode.innerHTML="<img src='limpo.png'>";
          function gerarqr(){
      var qrcode=document.getElementById('qrcode');
      qrcode.innerHTML=" ";
      var texto=document.getElementById("qrtexto").value;
          var qrcodee = new QRCode(qrcode, {
          text: texto,
          width: 300,
          height: 300,
          colorDark : "#000000",
          colorLight : "#ffffff",
          correctLevel : QRCode.CorrectLevel.H
      });
      }
      function limpar(){
      qrcode.innerHTML="<img src='limpo.png'>";
      }
      function baixar() {
      }
      </script><br><br><br><br><br><br><br>
      <h6 align="center">Feito por Itz_Topz</h6>
      </body>
      </html>
    • By Felipe Guedes Coutinho
      Tenho apenas 500k de armazenamento aqui no FÓRUM, já coloquei algumas imagens para ajudar alguns inscritos a solucionar os problemas, porém agora, estou com apenas 67,47k de armazenamento e não consigo colocar mais imagens nos tópicos.
       
      Minha dúvida é como faço para deletar as imagens que anexei aqui no fórum e liberar espaço para poder armazenas novas imagens?
       
      Se alguém puder me ajudar fica agradecido.
       
      Fico no aguardo.
       
      Att.
      Felipe Coutinho
    • By joelzsbit
      Pessoal implementei o link (https://xkeshi.github.io/image-compressor/) no meu site para fazer a compressão de imagens, porem preciso que essa imagem seja salva no banco.
      Não estou conseguindo pegar essa imagem comprimida e enviar para um arquivo salvar.php que é o responsável para salvar no banco.
      A imagem comprimida fica nesse bloco:
      <div class="w-100 text-center" v-if="outputURL"> <img class="mw-100" :src="outputURL" :alt="output.name"> <div class="mt-2"> <a class="btn btn-sm btn-blocks btn-outline-primary mt-2" :download="output.name" :href="outputURL" title="Download the compressed image">Download</a> </div> </div> Pensei em colocar um botão de salvar ali no lugar do Download, porem como que vou enviar os dados da imagem que estão em javascript para um arquivo salvar.php ?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.