Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Orique

Sistema Gerenciador de Download

Recommended Posts

E aí pessoal!

Estou com uma pequena dificuldade se puderem me ajudar, eu adicionei no menu de um sistema uma tela chamada Arquivos onde o adm faz o upload de um documento e escolhe o usuário que deve ter acesso a este documento para que o mesmo faça o Download. Criei uma nova tabela no banco com o nome files com os seguintes atributos: id, arquivo, date e user_id até aqui td certo. O problema é que qualquer usuário que faça o login tem acesso ao documento para fazer o Download e minha ideia é que somente o usuário escolhido pelo adm no momento do cadastro consiga visualizar. Qual a forma correta de se fazer isso?
Estou desenvolvendo em PHP OO a minha view está desta forma, qualquer usuário que faça login consegue ter acesso ao arquivo.

<table class="table">
    <thead>
        <tr>
          <th>ID</th>
          <th>Arquivo</th>
          <th>Data</th>
          <th>Ações</th>
        </tr>
    </thead>
    <tbody>
        <?php 
          if ($view_files) : 
            foreach ($view_files as $file) :
        ?>
        <tr> 
          <td><?php echo $file->id; ?></td>
          <td><?php echo $file->arquivo; ?></td>
          <td><?php echo $file->date; ?><td>
          <td><a href="arquivos/uploads/files/<?php echo $file->arquivo ?>">Download</a></td>
        </tr>      
    <?php 
        endforeach;
      endif;
    ?>
    </tbody>
  </table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual a dificuldade meu amigo? É só você fazer uma verificação:

Consulta->Receber ID do usuário logado

Consulta->Receber ID permitido

Se o id do usuário logado for igual ao id permitido o mesmo consegue efetuar o download.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual a dificuldade meu amigo? É só você fazer uma verificação:

Consulta->Receber ID do usuário logado

Consulta->Receber ID permitido

Se o id do usuário logado for igual ao id permitido o mesmo consegue efetuar o download.

E ai jamesbond, vlw pela dica.

Tentei algumas validações aqui mais não deram certo, como seria isso na pratica poderia me dar um exemplo de código?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Claro amigo.

 
//Você vai precisar fazer uma consulta no banco de dados para receber o id permitido
 
function receberIDOK($tabela, $column, $valor){
$this->pdo->prepare("SELECT * FROM ".$tabela." where ".$column." = ?");
$this->pdo->execute(array($valor));
$this->setLinha($this->pdo->fetchAll(PDO::FETCH_ASSOC); //
foreach ($this->getLinha() as $listar){
$this->id_permitido = $listar['id_permitido'];
}
}

//
receberIDOK(...); // Chamando a função que recebe o id permitido
if ($id_userlogado == $id_permitido){ // se o id do usuário logado for igual ao id permitido ele mostra os arquivos
echo "<tr> 
<td><?php echo $file->id; ?></td>
<td><?php echo $file->arquivo; ?></td>
<td><?php echo $file->date; ?><td>
<td><a href='arquivos/uploads/files/<?php echo $file->arquivo ?>'>Download</a></td>
</tr>";
}
?>

Para pegar o id do usuário logado basta gravar o usuário através de uma session e fazer uma consulta com o dado salvo. Acho que dá pra entender como funciona.

Não copie o código é apenas um exemplo de base. Caso copie não vai funcionar. :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Claro amigo.

 
//Você vai precisar fazer uma consulta no banco de dados para receber o id permitido
 
function receberIDOK($tabela, $column, $valor){
$this->pdo->prepare("SELECT * FROM ".$tabela." where ".$column." = ?");
$this->pdo->execute(array($valor));
$this->setLinha($this->pdo->fetchAll(PDO::FETCH_ASSOC); //
foreach ($this->getLinha() as $listar){
$this->id_permitido = $listar['id_permitido'];
}
}

//
receberIDOK(...); // Chamando a função que recebe o id permitido
if ($id_userlogado == $id_permitido){ // se o id do usuário logado for igual ao id permitido ele mostra os arquivos
echo "<tr> 
<td><?php echo $file->id; ?></td>
<td><?php echo $file->arquivo; ?></td>
<td><?php echo $file->date; ?><td>
<td><a href='arquivos/uploads/files/<?php echo $file->arquivo ?>'>Download</a></td>
</tr>";
}
?>

Para pegar o id do usuário logado basta gravar o usuário através de uma session e fazer uma consulta com o dado salvo. Acho que dá pra entender como funciona.

Não copie o código é apenas um exemplo de base. Caso copie não vai funcionar. :)

JamesBond passei algum tempo fora mais obrigado pela ajuda consegui resolver com sua ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.