Funkcja mysqli_query() w PHP

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

mysqli_query() to funkcja PHP służąca do wykonania zapytania SQL na połączeniu z bazą danych MySQL lub MariaDB. Jest częścią rozszerzenia mysqli.

Składnia

mysqli_query($polaczenie, $zapytanie);

Gdzie:

  • $polaczenie oznacza aktywne połączenie z bazą danych, np. wynik mysqli_connect(),
  • $zapytanie to tekst zapytania SQL, np. SELECT, INSERT, UPDATE albo DELETE.

Przykład użycia

$a = 'Jan';
$b = 'Kowalski';
$c = 'Warszawa';

$zapytanie = "INSERT INTO dane VALUES (NULL, '$a', '$b', '$c')";
mysqli_query($db, $zapytanie);

W tym przykładzie PHP przekazuje do bazy danych zapytanie dodające nowy rekord do tabeli dane.

Ważna uwaga o bezpieczeństwie

Bezpośrednie wstawianie zmiennych do zapytania, tak jak w prostych przykładach egzaminacyjnych, może prowadzić do podatności typu SQL Injection. W praktycznych aplikacjach powinno się stosować zapytania przygotowane, np. mysqli_prepare() i bindowanie parametrów.

Wynik działania

Dla zapytań typu INSERT, UPDATE i DELETE funkcja zwraca zwykle true lub false, zależnie od powodzenia wykonania. Dla SELECT zwracany jest obiekt wyniku, z którego można pobierać rekordy.