Hva er en mysqli_real_escape_string
Per definisjon lar mysqli_real_escape_string () spesialtegnene i en streng å slippe ut til databasen av SQL -spørringen, under hensyntagen til de gjeldende tegnene som er satt av den etablerte tilkoblingen. Med enkle ord gjør denne funksjonen spesialtegnene som kan betraktes som en del av strengen og lagret i databasen som en streng. Hackerne bruker stort sett spesialtegn som som ?,',^,%, og !, For å hacke databasen eller misbruke dataene fra en database, så for å forhindre denne loven, brukes denne funksjonen som bare tvinger PHP til å bli betraktet som strengen. Den generelle syntaks for denne funksjonen er som:
mysqli_real_escape_string (connection_variable, string_variable)I den generelle syntaksen, Connection_Variable er resultatet av mysqli_connect () -funksjonen lagret i en hvilken som helst variabel og String_variable er variabelen som antas å passere gjennom denne funksjonen for å unnslippe tegn. For eksempel oppretter vi en kode for PHP der vi først oppretter tilkoblingen til PHP med databasen ved å bruke funksjonen, mysqli_connect () med parametrene til localhost; Databasen er på samme maskin, brukernavn; Maadi, passord; QWER1234 og navn på databasen; Organisasjon. Deretter brukte vi IF-Else-tilstanden, for å sjekke om tilkoblingen er etablert vellykket eller ikke ved å bruke en funksjon, mysqli_real_escape_string (connection_variable, string_variable). Etter å ha sikret den vellykkede etableringen av forbindelsen, vil vi erklære variabelen, navngitt, FirstName, og tilordne en streng som inkluderer noe spesielt tegn og deretter sette den inn i databasen Linuxhint.
// Etablering av forbindelse med databasUtgangen til denne koden skal være en feil fordi strengen inneholder det spesielle tegnet mellom den. For å sjekke utdataene, åpne terminalen i Ubuntu og kjør denne PHP -filen ved å bruke kommandoen til PHP med filnavnet som koden er lagret.
$ PHP File1.PHPFeilen har oppstått, for å rette opp denne feilen, vil vi bruke mysqli_real_escape_string () og lagre strengen i databasen.
// Etablering av forbindelse med databasKjør igjen filen i terminalen.
$ PHP File1.PHPUtgangen er vellykket. For å bekrefte det vil vi gå til MySQL og kjøre følgende kommando for å sjekke om strengen er satt inn i databasen eller ikke.
Velg * fra Linuxhint;Konklusjon
For å sikre filene er en tidligere bekymring for alle, da de kan inkludere noen konfidensielle data. Stort sett i hacking brukes spesialtegnene til å koble til databasen for å hente dataene for uetisk bruk. For å forhindre dette kan vi legge en rekke sikkerhetskontroller på dataene før den settes inn i databasen. I denne artikkelen har vi diskutert en av de innebygde funksjonene til PHP som brukes til å sikre sikkerhet på en måte som ingen spesialtegn samhandler i databasen for å skade den. I stedet for denne funksjonen betraktet den som en normal streng og satte inn strengen i databasen.