Placing information within the specific user

Asked

Viewed 69 times

0

I need the registered user to have access only to his contract user 1 contrato1 user 2 contrato2

I already have the contracts in . doc I need that when the user logs into the.php panel he can see his contract in pdf or word doc, that the user can not see the user’s contract1

<?php
session_start();
include('conexao.php');

if(empty($_POST['usuario']) || empty($_POST['senha'])) {
	header('Location: index.php');
	exit();
}

$usuario = mysqli_real_escape_string($conexao, $_POST['usuario']);
$senha = mysqli_real_escape_string($conexao, $_POST['senha']);

$query = "select usuario from usuario where usuario = '{$usuario}' and senha = md5('{$senha}')";

$result = mysqli_query($conexao, $query);

$row = mysqli_num_rows($result);

if($row == 1) {
	$_SESSION['usuario'] = $usuario;
	header('Location: painel.php');
	exit();
} else {
	$_SESSION['nao_autenticado'] = true;
	header('Location: index.php');
	exit();
}
login.php

<?php
session_start();
include('verifica_login.php');
?>


<h2><a href="logout.php">Sair</a></h2>

painel.php

  • Try to put here the code you are using to show the contract currently. But anyway, think your user has logged in. So ideally, you should have his details, and the contract, they should be in the bank. Because if you use a URL like system.com.br/contratoID/userID is unsafe

  • I’m using an html <iframe to pull the contract that is the client code, I wish I could put contract inside the database so I have no idea

1 answer

0


You could register the document path in the database in a separate table with the user ID of that document. In the dashboard when it is logged in you cross-check these Ids to do a validation and display only the documents that match. I hope I helped you.

$titulo = $_POST['titulo'];

$texto = $_POST['texto'];

    $foto = $_FILES["foto"];

  // Recupera os dados dos campos

    $foto = $_FILES["foto"];



    // Se a foto estiver sido selecionada

    if (!empty($foto["name"])) {



        // Largura máxima em pixels

        $largura = 1500;

        // Altura máxima em pixels

        $altura = 1500;

        // Tamanho máximo do arquivo em bytes

        $tamanho = 10000000000000;



        $error = array();



        // Verifica se o arquivo é uma imagem

        if(!preg_match("/^image\/(pjpeg|jpeg|png|gif|bmp)$/", $foto["type"])){

           $error[1] = "Isso não é uma imagem.";

        }



        // Pega as dimensões da imagem

        $dimensoes = getimagesize($foto["tmp_name"]);



        // Verifica se a largura da imagem é maior que a largura permitida

        if($dimensoes[0] > $largura) {

            $error[2] = "A largura da imagem não deve ultrapassar ".$largura." pixels";

        }



        // Verifica se a altura da imagem é maior que a altura permitida

        if($dimensoes[1] > $altura) {

            $error[3] = "Altura da imagem não deve ultrapassar ".$altura." pixels";

        }



        // Verifica se o tamanho da imagem é maior que o tamanho permitido

        if($foto["size"] > $tamanho) {

            $error[4] = "A imagem deve ter no máximo ".$tamanho." bytes";

        }



        // Se não houver nenhum erro

        if (count($error) == 0) {



            // Pega extensão da imagem

            preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i", $foto["name"], $ext);



            // Gera um nome único para a imagem

            $nome_imagem = md5(uniqid(time())) . "." . $ext[1];



            // Caminho de onde ficará a imagem

            $caminho_imagem = "fotos/" . $nome_imagem;



            // Faz o upload da imagem para seu respectivo caminho

            move_uploaded_file($foto["tmp_name"], $caminho_imagem);



            // Insere os dados no banco

        //  $sql = mysql_query("INSERT INTO usuarios VALUES ('', '".$nome."', '".$email."', '".$nome_imagem."')");



            // Se os dados forem inseridos com sucesso

            // if ($sql){

            //  echo "Você foi cadastrado com sucesso.";

            // }

        }



        // Se houver mensagens de erro, exibe-as

        if (count($error) != 0) {

            foreach ($error as $erro) {

                echo $erro . "<br />";

            }

        }

    }



$query = "INSERT INTO anuncios (titulo, foto, texto) VALUES ('{$titulo}', '{$caminho_imagem}', '{$texto}')";

$inserir = mysqli_query($connect,$query);





if ($inserir) {

  echo "<SCRIPT LANGUAGE='JavaScript' TYPE='text/javascript'>

          location.href='things.php';

        </SCRIPT>";

} else {

  echo "Não foi possível cadastrar, tente novamente.";

  // Exibe dados sobre o erro:

  echo "Dados sobre o erro:" . mysqli_error($connect);

}
  • Have some tutorial on how to put the PDF contracts inside the database?

  • You can use the PHP file upload method. It can copy a file to another folder renamed or not and returning the path, can be stored in a variable for registration in the database, I made one with images I will send you the code https://www.php.net/manual/en/features.file-upload.methopost-d.php

Browser other questions tagged

You are not signed in. Login or sign up in order to post.