Como fazer upload de uma imagem para o PHP com MySQL Inserir
scripts PHP muitas vezes são combinados com um banco de dados MySQL para gerar conteúdo em um site. No caso de uma galeria de fotos , as próprias imagens residir em uma pasta em um servidor, e as informações da fotografia , talvez nome do arquivo da foto, uma legenda e um número de identificação com foto , é armazenado no banco de dados MySQL . Carregar uma foto requer colocar a foto na pasta correta e criar uma consulta SQL "Inserir" para colocar as informações da imagem no banco de dados . Use script PHP para realizar esses dois movimentos. Instruções 1
Crie um formulário no corpo de um documento HTML que pode fazer upload de um arquivo e aceitar a entrada do usuário para um "caption " eo número de " photo_id " . Dê o botão "Enviar" o atributo nome de " upload. " Quando o usuário clica no formulário , uma matriz _POST $ superglobal será criado , que inclui todos os atributos nome do formulário .
< Form action = "" method = "post" enctype = " multipart/form- dados "name =" uploadImage " id =" uploadImage " >
Comece o seu código PHP na parte superior do seu documento HTML e teste para a existência do elemento de "upload " no a matriz $ _POST . sua existência vai acionar o seu código PHP para ser executado.
< ? php
if ( array_key_exists ( ' upload' , $ _POST )) {
3
Crie uma conexão com o servidor MySQL e um banco de dados chamado de " amostra ". Use seu próprio nome de usuário e senha do banco de dados no lugar do "username" e "password ".
$ conn = new mysqli ( 'localhost' , 'username' , 'password ', ' amostra ') or die (" erro "); 4
Criar uma tabela chamada " galeria " dentro do "exemplo" banco de dados e configurá-lo com três colunas rotuladas "nome do arquivo ", "caption " e " photo_id . "
$ query = " CREATE TABLE IF NOT EXISTS galeria
(
nome varchar ( 30) NOT NULL,
legenda varchar ( 500) NOT NULL,
photo_id int ( 3) NOT NULL
) ";
$ result = mysqli_query ( $ conn , $ query ); 5
Adicione código PHP para definir um diretório de upload chamado Crie uma pasta chamada "imagens" no mesmo local onde você está salvando "imagens ". seu documento. Altere as permissões na pasta de ler e escrever de acesso. no Windows, clique com o botão direito na pasta e selecione a aba "Segurança " . Coloque uma marca de seleção ao lado de "Ler " e " escrever ". Em um Mac , pressione . " Detalhes" . " Read /Write " "Command" e "I" e vá até " propriedade e as permissões " sob Altere a definição para "Outros" para o código PHP é :
define (' upload_dir ' , ' images /'); 6
Adicione código PHP para mover a foto e atribuir o nome do arquivo para o arquivo $ = $ _FILES [' Imagem '] [ 'name'] ; . 7
Adicione sua consulta MySQL "Inserir" para inserir as informações no banco de dados de fotos Definir uma variável chamada $ OK como true se a "Inserir" consulta for bem sucedida
$ SQL3 = " INSERT INTO galeria ( nome do arquivo , a legenda photo_id ) VALUES ( '$ arquivo ' , , ? )"; .
Adicione uma mensagem no visor para indicar o sucesso se os US $ variável OK é definida como true caso contrário, exibe uma mensagem de erro Feche seu código PHP: . .
if ($ OK) {
echo ( "Você é foto foi enviado com sucesso " ) ;} else {
echo $ response = $ error stmt -> ; ?
}
}
> 9
Salve sua página com uma extensão . php para o seu servidor PHP ou um emulador de código PHP online. Você deverá ver um formulário de upload familiar. Escolha uma foto pequena no ambiente de trabalho , adicionar uma legenda da amostra e foto e número de identificação push " Enviar". você deve receber uma mensagem na parte superior da página no navegador que sua foto foi enviada com sucesso . Verifique se o seu banco de dados para uma nova tabela chamada " galeria " com as informações enviadas na forma . O código completo aparece da seguinte forma :
if ( array_key_exists ( ' upload' , $ _POST )) {
$ conn = new mysqli (' localhost ',' username ' , ' password ',' amostra ') or die (" erro ");