Co to jest mysqli_real_escape_string
Z definicji mysqli_real_escape_string () umożliwia znakom specjalnym w łańcuchu ucieczki do bazy danych przez zapytanie SQL, biorąc pod uwagę bieżący zestaw znaków ustalonego połączenia. Krótko mówiąc, ta funkcja umożliwia uznanie znaków specjalnych jako części ciągu i zapisanie w bazie danych jako ciąg. Hakerzy używają głównie znaków specjalnych, takich jak ?,',^,%i !, Do hakowania bazy danych lub niewłaściwego wykorzystania danych bazy danych, aby zapobiec tej ustawie, funkcja ta jest używana, która wymusza PHP do uznania tylko za ciąg. Ogólna składnia tej funkcji jest:
mysqli_real_escape_string (Connection_Variable, String_Variable)W ogólnej składni, Connection_variable jest wynikiem funkcji mysqli_connect () przechowywanej w dowolnej zmiennej i String_variable to zmienna, która ma przechodzić przez tę funkcję, aby uciec przed znakami. Na przykład tworzymy kod PHP, w którym najpierw ustanawiamy połączenie PHP z bazą danych za pomocą funkcji, MySQLI_Connect () z parametrami LocalHost; Baza danych znajduje się na tym samym komputerze, nazwie użytkownika; Maadi, hasło; QWER1234 i nazwa bazy danych; Organizacja. Następnie zastosowaliśmy warunek IF-ELSE, aby sprawdzić, czy połączenie zostało ustanowione pomyślnie, czy nie, używając funkcji, MySqli_Real_escape_String (Connection_Variable, String_Variable). Po zapewnieniu udanego ustanowienia połączenia zadeklarujemy zmienną, nazwaną, pierwszą nazwą, i przypiszmy kilka ciągów, który zawiera jakiś charakter specjalny, a następnie wstaw go do bazy danych Linuxhint.
// Ustanowienie połączenia z DATABASWyjście tego kodu powinno być błędem, ponieważ ciąg zawiera charakter specjalny „między nim. Aby sprawdzić wyjście, otwórz terminal w Ubuntu i uruchom ten plik PHP za pomocą polecenia PHP z nazwą pliku, w której kod jest zapisywany.
$ php plik 1.phpWystąpił błąd, aby naprawić ten błąd, użyjemy mysqli_real_escape_string () i zapisamy ciąg w bazie danych.
// Ustanowienie połączenia z DATABASPonownie uruchom plik w terminalu.
$ php plik 1.phpWyjście jest skuteczne. Aby to zweryfikować, przejdziemy do MySQL i uruchomić następujące polecenie, aby sprawdzić, czy ciąg jest wstawiony do bazy danych, czy nie.
Wybierz * z Linuxhint;Wniosek
Aby zabezpieczyć pliki, jest wcześniejszym problemem wszystkich, ponieważ mogą zawierać pewne poufne dane. Głównie w hakowaniu znaki specjalne służą do łączenia się z bazą danych do pobierania danych do nieetycznych zastosowań. Aby temu zapobiec, możemy umieścić różne kontrole bezpieczeństwa danych przed włożeniem do bazy danych. W tym artykule omówiliśmy jedną z wbudowanych funkcji PHP, która jest używana do zapewnienia bezpieczeństwa w sposób, w jaki żadne znaki specjalne w bazie danych, aby go skrzywdzić. Zamiast tego ta funkcja uznała ją za normalny ciąg i wstawiła ciąg w bazie danych.