Zapytania INSERT

Założenie: Nauczymy się, jak wstawiać dane do tabeli w bazie danych MySQL za pomocą języka PHP.

Krok po kroku:

  1. Połączenie z bazą danych: Najpierw musimy nawiązać połączenie z naszą bazą danych. Użyjemy do tego funkcji mysqli_connect().
  2. 
    $servername = "localhost";
    $username = "twoja_nazwa_uzytkownika";
    $password = "twoje_haslo";
    $dbname = "twoja_nazwa_bazy_danych";
    
    $conn = new mysqli($servername, $username, $password, $dbname);
    
    if ($conn->connect_error) {
      die("Connection failed: " . $conn->connect_error);
    }
    				

    Ten kod łączy się z serwerem MySQL na localhost, używając podanych danych uwierzytelniających. Pamiętaj o zastąpieniu placeholderów swoimi danymi.

  3. Przygotowanie zapytania INSERT: Następnie tworzymy zapytanie SQL, które wstawi dane do tabeli. Użyjemy parametrów, aby zapobiec atakom SQL injection.
  4. 
    $sql = "INSERT INTO Uzytkownicy (imie, nazwisko, email) VALUES (?, ?, ?)";
    $stmt = $conn->prepare($sql);
    $stmt->bind_param("sss", $imie, $nazwisko, $email);
    
    $imie = "Jan";
    $nazwisko = "Kowalski";
    $email = "jan.kowalski@example.com";
    
    $stmt->execute();
    				

    Zapytanie INSERT INTO wstawia dane do tabeli “Uzytkownicy”. bind_param wiąże zmienne PHP z parametrami zapytania, chroniąc przed SQL injection. “sss” oznacza, że trzy parametry są stringami.

  5. Sprawdzenie wyniku: Po wykonaniu zapytania, sprawdzamy, czy operacja się powiodła.
  6. 
    if ($stmt->affected_rows > 0) {
      echo "Nowy rekord został dodany pomyślnie";
    } else {
      echo "Błąd: " . $sql . "
    " . $conn->error; } $stmt->close(); $conn->close();

    affected_rows zwraca liczbę wierszy, które zostały zmienione. Jeśli jest większa od 0, oznacza to, że rekord został dodany.

Ten przykład pokazuje podstawy wstawiania danych do bazy danych MySQL za pomocą PHP. Zachęcamy do dalszego zgłębiania tematu i eksperymentowania z różnymi zapytaniami SQL!

Dodaj komentarz 0

Your email address will not be published. Required fields are marked *