Como usar MySqli_real_escape_string Função

Como usar MySqli_real_escape_string Função
Um mysqli_real_escape_string é uma função interna do PHP que é usado para controlar os caracteres indesejados e perigosos. Neste artigo, discutiremos com a ajuda de um exemplo qual é a função MySQLI_Real_escape_String e como ela pode ser usada para a proteção do banco de dados.

O que é um mysqli_real_escape_string

Por definição, Mysqli_real_escape_string () permite que os caracteres especiais em uma string escapem para o banco de dados pela consulta SQL, levando em consideração o conjunto de caracteres atuais da conexão estabelecida. Em palavras simples, essa função permite que os caracteres especiais sejam considerados como parte da string e salvos no banco de dados como uma string. Os hackers usam principalmente caracteres especiais, como ?,',^,%e !, Para hackear o banco de dados ou usar indevidamente os dados de um banco de dados; portanto, para evitar esse ato, essa função é usada que força o PHP a ser considerado apenas como a string. A sintaxe geral desta função é como:

mysqli_real_escape_string (Connection_variable, string_variable)

Na sintaxe geral, Connection_Variable é o resultado da função mysqli_connect () armazenada em qualquer variável e string_variable é a variável que deve passar por essa função para escapar dos caracteres. Por exemplo, criamos um código de PHP no qual primeiro estabelecemos a conexão do PHP com o banco de dados usando a função, mysqli_connect () com os parâmetros do localhost; O banco de dados está na mesma máquina, nome de usuário; maadi, senha; QWER1234 e nome do banco de dados; Organização. Em seguida, aplicamos a condição IF-Else, para verificar se a conexão é estabelecida com sucesso ou não usando uma função, mysqli_real_escape_string (Connection_variable, String_variable). Depois de garantir o estabelecimento bem -sucedido da conexão, declararemos a variável, nomeada, primeiro nome, e atribuiremos alguma string que inclua um personagem especial e depois a insira no banco de dados Linuxhint.

// estabelecimento de conexão com bancos de dados
$ conexão = mysqli_connect ("localhost", "maadi", "organização");
// Verificando o status da conexão
if (mysqli_connect_errno ())
eco "não conseguiu se conectar ao MySQL:" .mysqli_connect_error ();
saída();

// Declare a variável
$ primeironame2 = "John'o Alexander";
// inserindo no banco de dados
$ sql = "inserir em linuxhint (emp_name) valores ('$ primeironame2')");
// Execução de consultas MySQL
$ r = mysqli_query ($ conexão, "insira em valores Linuxhint ('FirstName2')");
se(!$ r)
impressão ("Ocorreu o erro \ n");

outro
print ("Record inserido com sucesso \ n");

//Conexão fechada
mysqli_close ($ conexão);
?>

A saída deste código deve ser um erro porque a sequência contém o personagem especial 'entre ele. Para verificar a saída, abra o terminal no Ubuntu e execute este arquivo php usando o comando do PHP com o nome do arquivo no qual o código é salvo.

$ php file1.php

O erro ocorreu, para corrigir esse erro, usaremos o mysqli_real_escape_string () e salvaremos a string no banco de dados.

// estabelecimento de conexão com bancos de dados
$ conexão = mysqli_connect ("localhost", "maadi", "organização");
// Verificando o status da conexão
if (mysqli_connect_errno ())
eco "não conseguiu se conectar ao MySQL:" .mysqli_connect_error ();
saída();

// Declare a variável
$ primeironame2 = "John'o Alexander";
// passa do mysqli_real_escape_string ()
$ primeironame = mysqli_real_escape_string ($ conexão, $ primeironame2);
// inserindo no banco de dados
$ sql = "inserir em linuxhint (emp_name) valores ('$ primeironame')");
// Execução de consultas MySQL
$ r = mysqli_query ($ conexão, "insira em valores linuxhint ('primeironame')");
se(!$ r)
impressão ("Ocorreu o erro \ n");

outro
print ("Record inserido com sucesso \ n");

//Conexão fechada
mysqli_close ($ conexão);
?>

Novamente execute o arquivo no terminal.

$ php file1.php

A saída é bem -sucedida. Para verificar, iremos para o MySQL e executaremos o seguinte comando para verificar se a string é inserida no banco de dados ou não.

Selecione * no linuxhint;

Conclusão

Para proteger os arquivos, é uma preocupação prévia de todos, pois eles podem incluir alguns dados confidenciais. Principalmente em hackers, os caracteres especiais são usados ​​para se conectar com o banco de dados para recuperar seus dados para usos antiéticos. Para evitar isso, podemos colocar uma variedade de verificações de segurança nos dados antes de serem inseridos no banco de dados. Neste artigo, discutimos uma das funções internas do PHP, que é usada para garantir a segurança de uma maneira que nenhum caractere especial interaja no banco de dados para prejudicá-lo. Em vez disso, essa função a considerou como uma string normal e inseriu a string no banco de dados.