Adicionando imagens a um banco de dados MySQL via PHP. Como escrever no banco de dados MySQL usando código PHP Adicionando ao mysql via php

Última atualização: 01/11/2015

Para adicionar dados, use a expressão "INSERT":

$query ="INSERIR EM VALORES DE PRODUTOS(NULL, "Samsung Galaxy III","Samsumg"");

A instrução "INSERT" insere uma única linha em uma tabela. Após a palavra-chave INTO, é indicado o nome da tabela, e após VALUES, o conjunto de valores para todas as colunas é indicado entre parênteses. Como temos três colunas na tabela, indicamos três valores.

Como no tópico anterior, ao criar uma tabela, especificamos a seguinte ordem de colunas: id, nome, empresa, neste caso é passado o valor NULL para a coluna id, “Samsung Galaxy III” para nome, e “Samsumg” para empresa.

Como a coluna id é definida como AUTO_INCREMENT, não precisamos fornecer um valor numérico específico e podemos passar um valor NULL e o MySQL atribuirá o próximo valor disponível à coluna.

Agora vamos ver como adicionar dados usando um exemplo. Vamos criar um arquivo criar.php com o seguinte conteúdo:

Dados adicionados"; ) // fecha a conexão mysqli_close($link); ) ?>

Adicionar novo modelo

Insira o modelo:

Fabricante:



Aqui, o código de interação com o banco de dados é aliado à funcionalidade dos formulários: por meio do formulário, inserimos os dados que serão adicionados ao banco de dados.

Segurança e MySQL

Aqui usamos a função mysqli_real_escape_string(). É usado para escapar caracteres em uma string, que é então usada em uma consulta SQL. Toma como parâmetros um objeto de conexão e uma string a ser escapada.

Assim, na verdade usamos o escape de caracteres duas vezes: primeiro para a expressão sql usando a função mysqli_real_escape_string() e depois para o html usando a função htmlentities(). Isso nos permitirá proteger-nos de dois tipos de ataques ao mesmo tempo: ataques XSS e injeções de SQL.

Comentários movidos do blog

SERGEI
14/09/2016 às 01h25
Boa tarde!
Estou interessado na seguinte questão: qual a maneira mais fácil de organizar o armazenamento de dados e configurações do programa sem usar banco de dados? Não quero ficar preso ao MySQL ou ao Access.

ADMINISTRADOR
14/09/2016 às 22h14
Olá!

Propriedades.Configurações
App.Config
Arquivo XML
serialização
Tente escolher um destes da lista.

Nicolau
16/09/2016 às 02:28
Olá, como posso excluir a linha selecionada no dataGridVIew do dataGridVIew e do phpMyAdmin.

PhpMyAdmin? Este é apenas um shell para trabalhar com um banco de dados, pode explicar?

Nicolau
18/09/2016 às 02:24
É necessário que a linha selecionada seja excluída do DataGridView e do banco de dados.

ADMINISTRADOR
19/09/2016 às 07:00
Como deletar uma linha em um banco de dados Mysql - artigo adicionado.

Nicolau
20/09/2016 às 09:20
Muito obrigado.

DIMA
20/09/2016 às 10h24
Olá, é possível implementar esse método não através do DataGridView, mas sim através do ComboBox? Se sim, como? Obrigado.

ADMINISTRADOR
22/09/2016 às 03:21
Olá. Exemplo:

GENNADY
22/09/2016 às 18h25
por que devo inserir esse texto no banco de dados System.Windows.Forms.TextBox, Text: ge

A propósito, este (ge) no final está escrito por gene, embora o texto esteja especificado nas configurações da tabela A palavra gene deveria caber mais, eu exibo esta tabela no meu programa e acontece que ela. exibe todo esse texto desnecessário para mim

ADMINISTRADOR
24/09/2016 às 04h17
Muito provavelmente a consulta SQL foi escrita incorretamente, por exemplo:

Em textBox1 digite o nome: Gena.

Consulta SQL: “Inserir nos valores do nome da tabela (textBox1, ..)”; Resultado: System.Windows.Forms.TextBox

E você precisa passar: “Inserir no nome da tabela valores(textBox1.Text, ..)”;
Resultado: Gene

GENNADY
24/09/2016 às 18h41
É assim que é. Obrigado

SERGEI
25/09/2016 às 11h51
Olá. Como implementar a adição ao banco de dados via textBox?

ADMINISTRADOR
26/09/2016 às 20h53
Tudo é igual em princípio. Por exemplo, vamos pegar o último exemplo, ele precisa de:

//cria parâmetros e adiciona-os à coleção cmd.Parameters.AddWithValue("@Name", textBox1.Text); cmd.Parameters.AddWithValue("@Sobrenome", textBox2.Text);

agora os parâmetros: Nome e Sobrenome recebem os valores inseridos nas caixas de texto e os transferem para o banco de dados

LINARA
27/09/2016 às 17h45
Olá, como posso selecionar uma linha no dataGridVIew e no phpMyAdmin?

ADMINISTRADOR
29/09/2016 às 02:06
Não sei como destacar uma linha no phpMyAdmin. E no dataGridView, por exemplo, isso pode ser feito usando o evento SelectionChanged.

PSH.
30/09/2016 às 03:48
2Linara:
Se você quiser editar linhas dessa forma, use uma ferramenta como o HediSQL, configure e altere as linhas.

2admin
Bom dia! Obrigado pelos materiais - tudo é muito legal)
Pergunta: Adiciono dados com a seguinte solicitação (é de teste):

String sql = "INSERT INTO usuários (`FIO`, `Tour`, `Contagem`, `Custo`, `Data`, `Passaporte`, `Nascimento`) VALORES ("Kolyan", "Moscou", "1+1 ", 1100, "11/11/2011", "1111 1111", "9.11.1900");";

Os dados são inseridos ok, mas no banco de dados (mysql) ao invés do alfabeto cirílico aparece “????”.

O Visual Studio diz que System.String é uma sequência Unicode.

Também tentei:

ALTER DATABASE `test` COLLATE "koi8r_general_ci"; ALTER TABLE `usuários` COLLATE="koi8r_general_ci"; ALTER DATABASE `test` COLLATE "utf8_unicode_ci"; ALTER TABLE `usuários` COLLATE="utf8_unicode_ci";

Mas isso não ajuda...
O que pode estar errado? Diferentes codificações VS e DB? Ou o que?
Você poderia me orientar sobre o que ler/alterar.
Obrigado

ADMINISTRADOR
01/10/2016 às 09h49
Olá.

No banco de dados (e na tabela) o mapeamento é utf_general_ci

Existe tal comparação? Talvez utf8_general_ci?

Normalmente eles criam um banco de dados Mysql escolhendo a comparação utf8_general_ci, para que não haja problemas com o alfabeto cirílico, a menos, é claro, que bandidos venham do cliente para o servidor.

COLLATION é usado para comparação, mas neste caso a codificação (charset) é importante. Portanto, primeiro você precisa ter certeza de que ele está configurado corretamente no servidor, por exemplo, em utf8, e não em latin1.

Ao conectar através do conector .net (por padrão), latin1 é usado, então às vezes você precisa especificar explicitamente a codificação utf8 na string de conexão:

MySqlConnection meucon; mycon = new MySqlConnection("server=127.0.0.1;uid=vasya;pwd=123;database=test;Charset=utf8;"); //MySqlConnectionStringBuilder: mysqlCSB.CharacterSet = "utf8";

PSH.
01/10/2016 às 11h34
Você está certo, eu fiz xixi em mim mesmo, utf8_general_ci!
Sim, ajudou, ;Charset=utf8;
Muito obrigado!

SERGIO
02/10/2016 às 11h02
Obrigado pelo exemplo prático. Pergunta
Criei um campo de texto no qual gostaria de inserir o endereço IP do banco de dados, mas não sei como inserir esses dados aqui

String conStr = "servidor=@textBox2;usuário=teste;" +
"banco de dados=teste;senha=teste;";
Por favor, diga-me como inserir dados de campos de texto em um formulário do Windows neste design...

ADMINISTRADOR
03/10/2016 às 11h50
"[e-mail protegido];usuário=...
Em geral, é melhor usar propriedades em vez de uma string, como neste artigo, ou o método String.Format()

OLGA2203
15/05/2017 às 20h14

String Connect = “Servidor=127.0.0.1;Porta=3306;Banco de dados=base;Fonte de dados=localhost;usuário=root;”; MySqlConnection com = new MySqlConnection(Conectar); con.Open(); //Estabelece uma conexão com o banco de dados. MySqlCommand cmd = new MySqlCommand(); cmd.CommandText = @”INSERT INTO tovar(ID,Categoria,Nome,Marca Registrada,Preço,Foto,Tamanho,Cor,Material,Contagem) VALORES (@pr, @Categoria, @Nome, @Marca Comercial, @Price, @Foto, @Tamanho, @Cor, @Material, @Contagem)”; cmd.Parameters.AddWithValue(“@pr”,contador); cmd.Parameters.AddWithValue(“@Categoria”, comboBox1.SelectedItem.ToString()); cmd.Parameters.AddWithValue(“@Nome”, textBox1.Text); cmd.Parameters.AddWithValue(“@TradeMark”, textBox2.Text); cmd.Parameters.AddWithValue(“@Price”, Convert.ToInt32(textBox4.Text)); cmd.Parameters.AddWithValue(“@Foto”, textBox3.Text); cmd.Parameters.AddWithValue(“@Tamanho”, textBox6.Text); cmd.Parameters.AddWithValue(“@Color”, textBox5.Text); cmd.Parameters.AddWithValue(“@Material”, textBox8.Text); cmd.Parameters.AddWithValue(“@Count”, Convert.ToInt32(textBox7.Text)); cmd.Conexão = con; cmd.ExecuteNonQuery(); MessageBox.Show(“A adição foi bem sucedida”, “A adição foi bem sucedida”, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);

O erro “A coluna 'ID' não pode ser nula” é exibido, removo a adição à coluna ID - a mesma coisa está escrita sobre a próxima coluna, etc.
Se eu inserir quaisquer valores constantes entre parênteses em VALUES, a linha será adicionada ao banco de dados.
Diga-me, por favor, qual é o problema? Preciso registrar exatamente os dados e valores inseridos através do formulário no banco de dados

Todos os módulos de um site ou aplicação web onde é necessário inserir e registrar alguns dados (por exemplo, nome, idade, endereço, etc.) utilizam uma função simples na linguagem mysql INSERT INTO `name_base` (nome,valor1,valor2 ) VALORES ('Vasya ','1','2');

Todas as variáveis ​​​​são inseridas no banco de dados de acordo com os valores que definimos nos primeiros colchetes. É importante considerar a codificação do script do manipulador, do banco de dados e do arquivo de configuração. É aconselhável usar a codificação mais comum UTF-8.

Observe que você pode gravar no banco de dados de duas maneiras.

Primeira maneira se não especificarmos inicialmente os nomes das células das tabelas do banco de dados. Depois temos que listar todas as variáveis ​​de cada célula, ou seja, quantas células existem na tabela do banco de dados, portanto muitas variáveis ​​devem ser listadas entre parênteses após o valor VALOR.

Por exemplo:
Existem quatro células em uma tabela de banco de dados. Isso significa que após o elemento VALUE (..), todas as quatro variáveis ​​devem ser listadas entre parênteses. E mais uma coisa: se a variável não existir, digamos que seja um parâmetro opcional. Então apenas escrevemos um valor vazio entre aspas ‘’,

"INSERIR EM VALORES `nome_base` (NULL, `".$nome."`,``,`2`)"; // o terceiro valor vazio é escrito entre aspas

Mas este pedido tem algumas pequenas desvantagens. Se você adicionar uma ou duas células a uma tabela de banco de dados, esta consulta retornará um erro. Porque neste método é obrigatório listar todas as células da consulta.

Segunda via se após uma consulta INSERT INTO `name_base` (...), liste todas as células após o nome do banco de dados. Um exemplo já foi discutido acima. Se você esqueceu, vamos escrever novamente:

"INSERT INTO `nome_base`(`nome`,`valor`,`valor2`) VALORES (NULO, `".$nome."`,``,`2`)";

Aqui listamos todas as células (nome, valor1, valor2) . E se você adicionar mais duas células à tabela do banco de dados, a sintaxe da consulta não precisará ser alterada. Mas, a menos que precisemos adicionar imediatamente em uma solicitação aquelas variáveis ​​adicionais que precisamos para essas células recém-criadas.

Este erro ocorre frequentemente após uma pequena alteração no site. Digamos que o administrador adicionou uma célula adicional ao banco de dados, digamos status. Mas o processador do script não teve tempo de trocar o módulo ou simplesmente esqueceu. Mas alguns sites têm uma estrutura muito complexa e encontrar um erro pode exigir muito tempo e esforço. Portanto, é aconselhável utilizar o segundo método de gravação no banco de dados. Embora esse tipo de erro seja cometido com mais frequência por programadores web novatos.

Entrada PHP no banco de dados MySQL. Exemplos práticos

Então, agora chegamos ao cerne da questão ao trabalhar com consultas de banco de dados. Faremos tudo usando exemplos práticos. Vamos criar um script simples para registrar os comentários que os visitantes do site deixarão.

Primeiro, vamos criar uma tabela msg no banco de dados com quatro células. Na primeira célula escrevemos o id do comentário. O número de caracteres em uma célula é de até dez caracteres com o parâmetro de incremento automático. Esta configuração automática mudará sempre que um comentário for adicionado ao +1.

A próxima célula é o nome do usuário. Número de caracteres - até duzentos a trezentos caracteres de sua escolha, parâmetro char. Em seguida, a célula do comentário - nesta célula inseriremos o texto do próprio comentário. Se você deseja gravar textos de comentários grandes, você pode definir o parâmetro text - então você pode inserir textos simplesmente enormes, com mais de quinhentos mil caracteres, ou definir o parâmetro tinytext, então caberão um pouco menos de caracteres, mas vai trabalhe um pouco mais rápido.

Mas, no nosso caso, teremos em mente que os visitantes não escreverão textos enormes. E portanto, nos limitaremos e registraremos dois mil caracteres com o parâmetro varchar para registrar valores de string.

Na última célula escreveremos a data em que o texto do comentário foi gravado. Escreveremos em formato numérico em segundos, utilizando a função de data e hora atual time(); Para simplificar, definiremos a função como a variável $time=time(); E vamos criar uma célula no banco de dados. Vamos chamá-lo com o mesmo nome de time com o parâmetro int (para valores numéricos). Vamos anotar o número de caracteres - onze é melhor (com uma pequena margem para o futuro :-).

O dump do banco de dados é o seguinte:

Estrutura da tabela `msg` -- CRIAR TABELA SE NÃO EXISTIR `msg` (`id` int(10) NOT NULL AUTO_INCREMENT, `name` char(250) NOT NULL, `coment` varchar(2000) NOT NULL, `time` int(11) NÃO NULO, CHAVE PRIMÁRIA (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

É isso, foi criada uma tabela para comentários. Agora escrevemos um formulário para escrever um comentário e o próprio manipulador de script. O código HTML para o formulário de comentários é o seguinte.

E dado
. Agora vamos falar sobre como adicionar imagens ao banco de dados MySQL via formulário usando PHP.

Criando um campo no banco de dados MySQL para adicionar uma imagem

Para começar, quero dizer que para armazenando imagens em um banco de dados MySQLÉ necessário definir um dos campos da tabela como derivado do tipo BLOB.

A abreviatura BLOB significa objeto binário grande. O tipo de armazenamento de dados BLOB possui diversas opções:

  • TINYBLOB - Pode armazenar até 255 bytes
  • BLOB pode armazenar até 64 kilobytes de informações
  • MEDIUMBLOB - até 16 megabytes
  • LONGBLOB até 4 gigabytes

Para armazenando um arquivo de imagem em um banco de dados você precisa ler o arquivo em uma variável e criar uma consulta para adicionar dados à tabela.

Preparando um formulário na página para adicionar uma imagem ao banco de dados MySQL

No meu caso a tarefa era adicione duas imagens ao banco de dados através de um formulário usando PHP. Temos um formulário com dois campos e um botão enviar:

nome do formulário = ”form1 ″ método =”post” ação =”add_image.php”
enctype="multipart/form-data"

Deixe-me lembrá-lo de que o atributo Ação especifica o arquivo que fará o carregamento dos arquivos de imagem. Atributo tipo de código indica como o conteúdo do formulário é codificado e as informações de upload do arquivo. Veja como preencher o atributo corretamente tipo de código evitar .

Observação: o suporte para upload de vários arquivos foi introduzido na versão 3.0.10.

Escrevendo código PHP para salvar uma imagem em um banco de dados MySQL

Como estamos enviando dois arquivos no atributo nome após a palavra indicamos “userfile” entre colchetes, isso deixa claro que estamos enviando vários arquivos usando um array contendo os atributos do arquivo:

$_FILES['userfile']['nome']

O nome do arquivo original na máquina cliente.

$_FILES['userfile']['tipo']

O tipo mime do arquivo, se o navegador forneceu esta informação.
Exemplo: "imagem/gif" .

$_FILES['userfile']['tamanho']

$_FILES['userfile']['tmp_name']

Nome do arquivo temporário sob o qual o arquivo baixado foi salvo no servidor.

Como obter os valores de cada arquivo?

Por exemplo, suponha que arquivos chamados /home/test/1.jpg e /home/test/2.jpg sejam enviados.

Neste caso $_FILES['userfile']['nome']
conterá o valor 1.jpg,
e $_FILES['userfile']['nome']
- valor 2.jpg

Da mesma forma, $_FILES[‘userfile’][‘size’] conterá o valor do tamanho do arquivo 1.jpg e assim por diante. Agora vamos dar uma olhada no código do arquivo add_image.php, que foi especificado no atributo form Ação.

1024*1024||$image_size==0) ( $ErrorDescription="Cada imagem não deve exceder 1 MB! A imagem não pode ser adicionada ao banco de dados."; return ""; ) // Se o arquivo chegou, verifique se o gráfico // it (por motivos de segurança) if(substr($_FILES["userfile"]["type"][$num], 0, 5)=="image") ( //Lê o conteúdo do arquivo $image=file_get_contents($_FILES ["userfile"]["tmp_name"][$num]); //Escapa de caracteres especiais no conteúdo do arquivo $image=mysql_escape_string($image); "Você não carregou uma imagem, portanto ela não pode ser adicionada."; return ""; ) )else( $ErrorDescription="Você não carregou uma imagem, o campo está vazio, portanto o arquivo não pode ser adicionado ao banco de dados ."; return ; ) return $imagem; ) ?>

Então neste artigo falamos sobre como salvar uma imagem em um banco de dados MySQL , usando PHP.

Nesta lição aprenderemos como inserir dados inseridos pelo usuário em um formulário em um banco de dados MySql. Você aprenderá como se conectar a um banco de dados MySql a partir do código de uma página da web e como processar e inserir dados no banco de dados.


Na última lição falei sobre como instalar o Denver no seu computador, como criar seu próprio banco de dados, um usuário para ele, como criar uma tabela no banco de dados e preenchemos com um registro.

Nesta lição criaremos um documento html para inserir as informações do usuário, bem como um arquivo php que trata dessas informações, que irá processar os dados, conectar-se ao banco de dados MySql e ali inserir novos registros.

Passando das palavras à ação, vamos começar.

Adicionando dados do usuário ao banco de dados MySql a partir de uma página da web

Primeira etapa: crie um formulário html para entrada de dados

Desde o início precisamos nos preparar para trabalhar com php, MySql e testar o código escrito no computador local. Por esta:

1. Inicie o Denwer no seu computador.

2. Abra o disco virtual criado por Denver (por exemplo, o meu é a unidade “Z”). Abra-o e então: home – localhost – www – crie uma nova pasta lá e dê um nome a ela (vou chamá-la de “db1”).

3. Se você trabalha no Adobe Dreamweaver, vá até o gerenciador do site, clique no botão “Novo”, selecione o caminho para a pasta recém-criada como caminho, no campo acima você pode dar um nome ao site, a seguir clique Salvar – Concluído. Depois de tudo isso, sua pasta aparecerá no painel direito do Adobe Dreamweaver.

1. Agora vamos criar um arquivo html normal (vamos chamá-lo de info_form.html e salvá-lo na pasta db1 recém-criada) e escrever o código do formulário para inserir as informações. Em nossa tabela de usuários do banco de dados new_db existem 4 campos que o usuário poderá preencher (o campo id será preenchido automaticamente). Com base nisso, você pode criar um código como este:

Documento sem título












Aqui no parâmetro “action” do nosso formulário o arquivo é cadastrado formulário.php. Será o arquivo manipulador que criaremos a seguir.

Vamos também criar um arquivo style.css para estilizar nosso formulário. Ele já está incluso no código, então falta criá-lo, colocá-lo na mesma pasta do arquivo html e escrever nele o seguinte código:

Body(width:400px; margin:0 auto; background:#F8F4B6;) label(display: block; float: left; width: 150px; padding: 0 10px; margin: 18px 0 0; text-align: right;) # enviar(float:direita; margem:5px 50px 10px 0;)

O formulário agora fica assim:

Porém, se você inserir dados e tentar enviar o formulário, verá um erro, pois não existe nenhum arquivo form.php no diretório de scripts.

Criar um arquivo manipulador é nossa próxima tarefa.

2. Vamos dentro da pasta banco de dados1 crie uma pasta com o nome "roteiros". Nele salvaremos todos os nossos scripts para interação com o banco de dados MySql.

Assim que a pasta for criada, crie um novo arquivo php e salve-o na pasta de scripts com o nome formulário.php.

Mas antes de começar a trabalhar diretamente no arquivo de processamento de informações, você deve primeiro conectar-se ao nosso banco de dados. Sugiro criar um arquivo separado para isso e aqui está o porquê:

Muito provavelmente no seu projeto você terá que se conectar ao banco de dados MySql a partir de mais de um arquivo. Normalmente, vários arquivos de projeto interagem com o banco de dados.
É muito impraticável escrever o mesmo código para conexão ao banco de dados em cada arquivo. E se, por exemplo, existem 50 arquivos desse tipo e um belo dia você altera a senha do usuário e terá que procurar todos esses 50 arquivos e fazer uma correção em cada um.
É muito mais conveniente utilizar um arquivo separado para conexão, que será conectado a cada um dos arquivos onde deverá haver conexão com o banco de dados MySql. Neste caso, você só precisará fazer correções em um arquivo.

Então vamos criar um novo arquivo php, chame-o conectar.php e coloque-o na pasta do script. Nele escreveremos o código de conexão ao nosso banco de dados MySql, bem como o código que reportará erros caso eles ocorram. Observe que como parâmetros você precisará inserir seu nome de usuário, sua senha e o nome do banco de dados. O host deve ser localhost.

Erro ao conectar ao banco de dados! " .mysql_error() . "

"); mysql_select_db("new_db")//parâmetro entre colchetes ("nome do banco de dados ao qual estamos nos conectando") ou die("

Erro de seleção do banco de dados! ".mysql_error() ."

"); ?>

Agora vamos ao arquivo form.php e incluir o arquivo connect.php nele usando o seguinte código:

Se você tentar enviar o formulário agora, verá uma página da web em branco após o envio. Isso é normal, já que acabamos de nos conectar ao banco de dados e não estamos gerando mais nada por enquanto.

Caso veja uma mensagem de erro, verifique se todos os parâmetros estão corretos (nome de usuário, senha, nome do host: localhos, nome do banco de dados) e também certifique-se de que seu Denver esteja habilitado.

3. Conectamos com sucesso ao banco de dados MySql e agora precisamos aceite os dados inseridos no formulário em nosso gerenciador de arquivos. Os atributos “nome” que estão presentes no documento html nos ajudarão nisso.

Para obter os dados, utilizaremos uma variável php especial que nos fornece todas as informações do formulário web. Esta variável é chamada “$_REQUEST”.

Escreva o seguinte código no arquivo form.php após conectar o arquivo connect.php:

$primeiro_nome = $_REQUEST["primeiro_nome"]; $sobrenome = $_REQUEST["sobrenome"]; $e-mail = $_REQUEST["e-mail"]; $facebook = $_REQUEST["facebook"];

4. Recebemos os dados no arquivo e os inserimos nas variáveis. Agora você precisa envie esses dados para nossa tabela de banco de dados MySql. Para fazer isso, você precisa escrever o seguinte código abaixo:

$insert_sql = "INSERT INTO usuários (nome, sobrenome, email, facebook)" . "VALORES("($primeiro_nome)", "($último_nome)", "($email)", "($facebook)");"; mysql_query($inserir_sql);

Aqui, primeiro formulamos uma consulta dizendo que precisamos inserir as variáveis ​​correspondentes nos campos correspondentes da tabela “usuários”. Colocamos esta consulta na variável “$insert_sql”. E então usando a função especial mysql_query executamos esta consulta.

Se você preencher e enviar o formulário agora, e depois olhar a tabela “usuários” do seu banco de dados, verá um novo registro que aparece lá após o envio.

5. Inserimos um novo registro de uma página da web em uma tabela de banco de dados MySql. Agora gostaria de abordar um pouco o formato em que nossos dados são inseridos.

Em primeiro lugar, é preciso cuidar da situação em que a pessoa que preenche um formulário pode colocar espaços desnecessários no início da inserção das informações. Eles precisam ser aparados.

Em segundo lugar, temos um campo no Facebook. Se posteriormente quisermos exibir essas informações como um link, devemos garantir que os dados neste campo sejam armazenados no formato correto (ou seja, “identificador http://www.facebook.com/facebook”). Mas nem sempre o usuário inserirá esses dados conforme necessitamos. Ele pode inserir: “www.facebook.com/facebook id”, “facebook.com/facebook id” ou simplesmente “/facebook id”.

Estas situações devem ser evitadas. Para fazer isso, vamos ajustar nosso código. Cortaremos possíveis espaços extras usando a função aparar, e a função verificará a exatidão do URL inserido para o Facebook preg_match. Assim, todo o código do arquivo form.php ficará assim:

Documento sem título Um novo registro foi inserido no banco de dados!

"; ?>

Sobre a função preg_match:
Esta é uma função para pesquisar com expressões regulares.

O primeiro parâmetro entre colchetes é uma expressão regular, o segundo é a string onde pesquisar.

A função retorna apenas a primeira correspondência: 0 – se não houver correspondência, 1 – se houver correspondência.

Agora tente preencher o formulário de forma intencional, deixando espaços desnecessários no início do preenchimento de qualquer um dos campos e inserindo o endereço do Facebook sem http:// ou mesmo inserindo apenas o identificador do Facebook. Envie uma solicitação, vá até o banco de dados e verá que, apesar do preenchimento não totalmente correto, os dados têm exatamente a forma que precisamos.

É aqui que terminarei esta lição. Você pode baixar todos os arquivos desta lição no código-fonte (só não se esqueça de alterar os parâmetros para os seus no arquivo connect.php).

E na próxima lição aprenderemos como extrair informações de um banco de dados MySql, selecionar os registros necessários e exibi-los na tela. Para não perder a próxima lição, inscreva-se nas atualizações do blog usando o formulário de inscrição que você vê abaixo.

Deixe seus comentários e compartilhe com os amigos usando os botões das redes sociais.

Boa sorte e até a próxima lição!



gastroguru 2017