I dette innlegget vil vi diskutere hvordan du bruker MySQLI_Query -funksjonen i PHP for å utføre en gitt spørring til en MySQL -database.
La oss utforske.
Funksjonssyntaks
Følgende utdrag nedenfor illustrerer funksjonssyntaksen i prosessuell format.
mysqli_query (mysqli $ mysql, streng $ spørring, int $ resultat_mode = mysqli_store_result): mysqli_result | bool
Funksjonen godtar følgende parametere:
- MySQL - Dette definerer et mysqli -objekt som er returnert fra mysqli_connect eller mysqli_init () -funksjonene.
- Spørring - Dette definerer en spørringsstreng utført på måldatabasen. PHP anbefaler å bruke parameteriserte forberedte utsagn hvis spørringen inneholder noen variabel inngang. Alternativt må inngangen være riktig formatert, og strengene slapp unna for å forhindre SQL -injeksjoner.
- Resultat_mode - Denne parameteren definerer resultatmodus som definerer hvordan resultatet vil bli returnert fra serveren. De aksepterte parametrene inkluderer følgende:
- Mysqli_store_result - Returnerer resultatet som et mysqli_result -objekt med et bufret resultatsett.
- Mysqli_use_result - Returnerer resultatet som en ubufferet mysqli_result -objekt.
- Mysqli_async - Dette utfører den definerte spørringen asynkront, og intet resultat returneres umiddelbart. I stedet utfører funksjonen spørringen og bruker deretter mysqli_poll () -funksjonen for å returnere alle resultatene fra spørringen.
Funksjonen returnerer falsk ved feil. Hvis vellykket, utfører funksjonen handlingene som er definert i spørringen, for eksempel SELECT, Vis, beskriver osv.
Eksempelfunksjonsbruk
Følgende viser et eksempel på bruk av mysqli_query -funksjonen. Begynn med å opprette en eksempeldatabase, tabell og data som vist i spørsmålene nedenfor:
Opprette database SRC;
Bruk SRC;
Slippbord hvis eksisterer stack_mapping;
Lag tabell Stack_Mapping (
id int auto_increment primærnøkkel,
server_name varchar (50) ikke null,
adresse varchar (100) ikke null,
installert_versjon varchar (50),
verktøy_id int
);
Sett inn i stack_mapping (server_navn, adresse, installert_versjon, verktøy_id)
Verdier ('SQL Server', 'LocalHost: 1433', '15.0 ', 1),
('Elasticsearch', 'Localhost: 9200', '8.4 ', 2),
('Redis', 'Localhost: 6379', '6.0 ', 3),
('PostgreSql', 'Localhost: 5432', '14.5 ', 4),
('Mysql', 'localhost: 3306', '8.0 ', null);
Eksempel - Bruke PHP mysqli_query () -funksjon for å hente poster
Eksemplet nedenfor illustrerer hvordan du bruker funksjonen til å hente postene fra tabellen:
mysqli_report (mysqli_report_error | mysqli_report_strict);
$ conn = mysqli_connect ('localhost', "root", "", "src");
$ spørring = "velg * fra stack_mapping";
$ resultat = mysqli_query ($ conn, $ spørring);
printf ("returnerte rader: %d \ n", mysqli_num_rows ($ resultat));
?>
I dette tilfellet kobles funksjonen over til databasen og bruker deretter mysqli_function for å hente radene fra stack_mapping -tabellen.
Til slutt bestemmer vi antall returnerte rader ved hjelp av MySQLI_NUM_ROWS -funksjonen. Den resulterende utgangen er som vist:
Returnerte rader 5
Merk: Hvis du har en stor mengde data å hente, bruk MySQLI_USE_RESULT Resultatmodus.
Konklusjon
I dette innlegget diskuterte vi hvordan du bruker MySQLI_FETCH -funksjonen i PHP for å utføre en gitt spørring til en database.
Takk for at du leste!!