Armazenando arquivos enviados pelo usuário em um banco de dados MySQL

Às vezes, é útil coletar dados dos usuários do site e armazenar essas informações em um MySQL base de dados. Já vimos que você pode preencher um banco de dados usando PHP, agora adicionaremos a praticidade de permitir que os dados sejam adicionados por meio de um formulário da Web fácil de usar.

Em seguida, você precisa criar process.php, a página para a qual nosso formulário envia seus dados. Aqui está um exemplo de como coletar esses dados para postar no banco de dados MySQL:

Obviamente, antes de tentarmos, precisamos garantir que a tabela realmente exista. A execução desse código deve criar uma tabela que pode ser usada com nossos arquivos de amostra:

Agora você sabe como armazenar dados do usuário no MySQL, então vamos dar um passo adiante e aprender como fazer upload de um arquivo para armazenamento. Primeiro, vamos criar nosso banco de dados de exemplo:

A primeira coisa que você deve notar é um campo chamado Eu iria que está definido como INCREMENTO AUTOMÁTICO. O que isso tipo de dados

instagram viewer
significa que ele conta para atribuir a cada arquivo um ID de arquivo exclusivo, começando em 1 e indo para 9999 (desde que especificamos 4 dígitos). Você provavelmente também notará que nosso campo de dados é chamado LONGBLOB. Existem muitos tipos de BLOB, como mencionamos anteriormente. TINYBLOB, BLOB, MEDIUMBLOB e LONGBLOB são suas opções, mas definimos o nosso como LONGBLOB para permitir os maiores arquivos possíveis.

Em seguida, criaremos um formulário para permitir que o usuário faça o upload de seu arquivo. Esta é apenas uma forma simples, obviamente, você pode vestir se quiser:

Em seguida, precisamos criar o upload.php, que pegará o arquivo de nossos usuários e armazenará em nosso banco de dados. Abaixo está um exemplo de codificação para upload.php.

Em seguida, ele usa o ADDSLASHES função. O que isso faz é adicionar barras invertidas, se necessário, no nome do arquivo, para que não ocorram erros ao consultar o banco de dados. Por exemplo, se tivermos Billy'sFile.gif, ele será convertido em Billy'sFile.gif. FOPEN abre o arquivo e FREAD é um arquivo binário seguro lido para que o ADDSLASHES é aplicado aos dados no arquivo, se necessário.

Em seguida, adicionamos todas as informações que nosso formulário coletou em nosso banco de dados. Você notará que listamos os campos primeiro e os valores depois, para não tentarmos inserir acidentalmente dados em nosso primeiro campo (o campo de ID de atribuição automática).

Nós já aprendemos a recuperar dados simples do nosso banco de dados MySQL. Da mesma forma, armazenar seus arquivos em um banco de dados MySQL não seria muito prático se não houvesse uma maneira de recuperá-los. A maneira como vamos aprender a fazer isso é atribuindo a cada arquivo um URL com base em seu número de identificação. Se você se lembrar de quando carregamos os arquivos, atribuímos automaticamente a cada um deles um número de identificação. Usaremos isso aqui quando chamarmos os arquivos de volta. Salve este código como download.php

Agora, para recuperar nosso arquivo, apontamos nosso navegador para: http://www.yoursite.com/download.php? id = 2 (substitua o 2 pelo código de arquivo que você deseja baixar / exibir)

Este código é a base para muitas coisas. Com isso como base, você pode adicionar uma consulta ao banco de dados que lista os arquivos e colocá-los em um menu suspenso para as pessoas escolherem. Ou você pode definir o ID como um número criado aleatoriamente para que um gráfico diferente do seu banco de dados seja exibido aleatoriamente toda vez que uma pessoa o visita. As possibilidades são infinitas.

Como nosso código anterior que baixou arquivos, esse script permite que os arquivos sejam removidos apenas digitando o URL: http://yoursite.com/remove.php? id = 2 (substitua 2 pelo ID que você deseja remover.) Por razões óbvias, você deseja tenha cuidado com este código. Isso é claro para demonstração, quando na verdade criamos aplicativos que queremos colocar em salvaguardas que pergunte ao usuário se ele tem certeza de que deseja excluir ou talvez permita apenas que as pessoas com senha removam arquivos. Este código simples é a base na qual iremos construir para fazer todas essas coisas.

instagram story viewer