Narzędzia użytkownika

Narzędzia witryny


narzedzia:php_sklep

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Poprzednia rewizja po obu stronachPoprzednia wersja
Nowa wersja
Poprzednia wersja
narzedzia:php_sklep [2025/05/13 14:14] – usunięto - edycja zewnętrzna (Nieznana data) 127.0.0.1narzedzia:php_sklep [2025/05/16 18:45] (aktualna) administrator
Linia 1: Linia 1:
 +====== PHP: Obsługa Bazy MySQL w PHP na przykładzie bazy Sklep ======
 +
 +Poniżej jest kod aplikacji która jest wykorzystana w [[notatki:bazy_danych|materiałach szkoleniowych]] do bazy MySQL.
 +
 +<code php sklep.php>
 +<?php
 +// Ustawienia połączenia z bazą danych
 +$host = 'ADRES IP';
 +$user = 'LOGIN';
 +$password = 'HASŁO';
 +$database = 'sklep';
 +
 +// Połączenie z bazą danych
 +$conn = new mysqli($host, $user, $password, $database);
 +
 +// Sprawdzenie połączenia
 +if ($conn->connect_error) {
 +    die("Błąd połączenia: " . $conn->connect_error);
 +}
 +
 +// Zmienna do przechowywania wyników i błędów
 +$resultMessage = '';
 +$tableOutput = '';
 +
 +// Obsługa formularza
 +if ($_SERVER['REQUEST_METHOD'] === 'POST') {
 +    $query = $_POST['sql_query'] ?? '';
 +
 +    if (!empty($query)) {
 +        if ($result = $conn->query($query)) {
 +            if ($result instanceof mysqli_result) {
 +                // Tworzenie tabeli z wynikami
 +                $tableOutput .= "<table border='1' cellpadding='5'><tr>";
 +                while ($fieldinfo = $result->fetch_field()) {
 +                    $tableOutput .= "<th>{$fieldinfo->name}</th>";
 +                }
 +                $tableOutput .= "</tr>";
 +
 +                while ($row = $result->fetch_assoc()) {
 +                    $tableOutput .= "<tr>";
 +                    foreach ($row as $cell) {
 +                        // Bezpieczne przetwarzanie wartości (null -> pusty string)
 +                        $tableOutput .= "<td>" . htmlspecialchars($cell ?? '') . "</td>";
 +                    }
 +                    $tableOutput .= "</tr>";
 +                }
 +                $tableOutput .= "</table>";
 +
 +                $result->free();
 +            } else {
 +                $resultMessage = "Zapytanie wykonane pomyślnie.";
 +            }
 +        } else {
 +            $resultMessage = "Błąd zapytania: " . $conn->error;
 +        }
 +    } else {
 +        $resultMessage = "Pole zapytania nie może być puste.";
 +    }
 +}
 +
 +$conn->close();
 +?>
 +
 +<!DOCTYPE html>
 +<html>
 +<head>
 +    <title>Podgląd bazy sklep</title>
 +</head>
 +<body>
 +    <h1>Podgląd bazy Sklep</h1>
 +    <h4>Tutaj można wykonywać tylko kwerendy SELECT</h4>
 +    <form method="post">
 +        <label for="sql_query">Wpisz zapytanie SQL:</label><br>
 +        <textarea name="sql_query" id="sql_query" rows="6" cols="80"><?= htmlspecialchars($_POST['sql_query'] ?? '') ?></textarea><br><br>
 +        <input type="submit" value="Wykonaj zapytanie">
 +    </form>
 +
 +    <div style="margin-top:20px;">
 +        <?php if (!empty($resultMessage)) echo "<p><strong>$resultMessage</strong></p>"; ?>
 +        <?= $tableOutput ?>
 +    </div>
 + <a href="LINK">Kod tej aplikacji jest dostępny tutaj</a>
 +</body>
 +</html>
 +
 +</code>