I made a simple table form, but I don't know where I made a mistake. Below is the code.
Please give me some help.
index.php
<?php require_once 'baza.php';
$connection = new mysqli($host, $username, $password, $database);
if ($connection->connect_error) {
die("Błąd połączenia z bazą danych: " . $connection->connect_error);
}
$connection->close();
?>`
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>System zarządzania danymi samochodowymi</title>
<link rel="stylesheet" href="style.css">
<script src="script.js"></script>
</head>
<body>
<div class="search">
<input type="text" id="searchInput" placeholder="Wyszukaj po numerze VIN">
<button onclick="search()">Szukaj</button>
<select id="pageSize">
<option value="5">5</option>
<option value="10">10</option>
<option value="15">15</option>
<option value="20">20</option>
</select>
<label for="pageSize">wyników na stronę</label>
</div>
<div class="form">
<form action="save_data.php" method="POST">
<label for="dataPrzyjecia">Data przyjęcia:</label>
<input type="date" id="dataPrzyjecia" name="dataPrzyjecia">
<label for="dataWykonania">Data wykonania:</label>
<input type="date" id="dataWykonania" name="dataWykonania">
<label for="dataOddania">Data oddania samochodu:</label>
<input type="date" id="dataOddania" name="dataOddania">
<label for="numerVIN">Numer VIN:</label>
<input type="text" id="numerVIN" name="numerVIN">
<label for="przebieg">Przebieg:</label>
<input type="number" id="przebieg" name="przebieg">
<label for="imieOdbierajacego">Imię osoby odbierającej samochód:</label>
<input type="text" id="imieOdbierajacego" name="imieOdbierajacego">
<label for="daneKontaktowe">Dane kontaktowe:</label>
<input type="text" id="daneKontaktowe" name="daneKontaktowe">
<label for="wykonywaneZadania">Co trzeba wykonać:</label>
<input type="text" id="wykonywaneZadania" name="wykonywaneZadania">
<label for="wykonaneZadania">Co zostało wykonane:</label>
<input type="text" id="wykonaneZadania" name="wykonaneZadania">
<label for="uwagi">Uwagi:</label>
<input type="text" id="uwagi" name="uwagi">
<button type="submit">Zapisz</button>
</form>
</div>
<div class="data-list">
<h2>Dane samochodowe</h2>
<?php
// Kod PHP pobierający dane z bazy danych i wyświetlający je w postaci tabeli
$host = 'localhost'; // Adres serwera bazy danych
$username = 'srv344_dane'; // Login do phpMyAdmin
$password = 'b6FJtM9k86Tyky4JGWeV'; // Hasło do phpMyAdmin
$database = 'srv344_dane'; // Nazwa bazy danych
$conn = new mysqli($host, $username, $password, $database);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM samochody";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo '<table>';
echo '<tr><th>Data przyjęcia</th><th>Data wykonania</th><th>Data oddania samochodu</th><th>Numer VIN</th><th>Przebieg</th><th>Imię osoby odbierającej samochód</th><th>Dane kontaktowe</th><th>Co trzeba wykonać</th><th>Co zostało wykonane</th><th>Uwagi</th></tr>';
$color = "#D9D9D9";
while($row = $result->fetch_assoc()) {
echo '<tr style="background-color: ' . $color . '">';
echo '<td>' . $row["dataPrzyjecia"] . '</td>';
echo '<td>' . $row["dataWykonania"] . '</td>';
echo '<td>' . $row["dataOddania"] . '</td>';
echo '<td>' . $row["numerVIN"] . '</td>';
echo '<td>' . $row["przebieg"] . '</td>';
echo '<td>' . $row["imieOdbierajacego"] . '</td>';
echo '<td>' . $row["daneKontaktowe"] . '</td>';
echo '<td>' . $row["wykonywaneZadania"] . '</td>';
echo '<td>' . $row["wykonaneZadania"] . '</td>';
echo '<td>' . $row["uwagi"] . '</td>';
echo '<td><button onclick="edit(' . $row["id"] . ')">Edytuj</button></td>';
echo '<td><button onclick="delete(' . $row["id"] . ')">Usuń</button></td>';
echo '</tr>';
$color = ($color == "#D9D9D9") ? "#FFFFFF" : "#D9D9D9";
}
echo '</table>';
} else {
echo "Brak danych.";
}
$conn->close();
?>
</div>
</body>
</html>
baza.php
<?php
// Dane do połączenia z bazą danych
$host = 'localhost'; // Adres serwera bazy danych
$username = 'srv344_dane'; // Login do phpMyAdmin
$password = 'b6FJtM9k86Tyky4JV'; // Hasło do phpMyAdmin
$database = 'srv344_dane'; // Nazwa bazy danych
// ... Tutaj możesz dodać inne zmienne z danymi, jeśli potrzebujesz
?>
save_data.php
<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
?>
<?php
// Pobierz dane z formularza
$dataPrzyjecia = $_POST['dataPrzyjecia'];
$dataWykonania = $_POST['dataWykonania'];
$dataOddania = $_POST['dataOddania'];
$numerVIN = $_POST['numerVIN'];
$przebieg = $_POST['przebieg'];
$imieOdbierajacego = $_POST['imieOdbierajacego'];
$daneKontaktowe = $_POST['daneKontaktowe'];
$wykonywaneZadania = $_POST['wykonywaneZadania'];
$wykonaneZadania = $_POST['wykonaneZadania'];
$uwagi = $_POST['uwagi'];
// Utwórz połączenie z bazą danych
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "moja_baza";
$conn = new mysqli($servername, $username, $password, $dbname);
// Sprawdź połączenie
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// Przygotuj zapytanie SQL z parametrami
$stmt = $conn->prepare("INSERT INTO samochody (dataPrzyjecia, dataWykonania, dataOddania, numerVIN, przebieg, imieOdbierajacego, daneKontaktowe, wykonywaneZadania, wykonaneZadania, uwagi) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
// Sprawdź, czy przygotowanie zapytania się powiodło
if ($stmt === false) {
die("Error: " . $conn->error);
}
// Przypisz wartości parametrów
$stmt->bind_param("ssssisssss", $dataPrzyjecia, $dataWykonania, $dataOddania, $numerVIN, $przebieg, $imieOdbierajacego, $daneKontaktowe, $wykonywaneZadania, $wykonaneZadania, $uwagi);
// Wykonaj zapytanie
if ($stmt->execute() === false) {
die("Error: " . $stmt->error);
}
// Zamknij połączenie i zapytanie
$stmt->close();
$conn->close();
// Przekieruj do strony głównej po zapisaniu danych
header("Location: index.php");
exit();
?>
phpMyAdmin
CREATE TABLE samochody (
id INT AUTO_INCREMENT PRIMARY KEY,
dataPrzyjecia DATE,
dataWykonania DATE,
dataOddania DATE,
numerVIN VARCHAR(20),
przebieg INT,
imieOdbierajacego VARCHAR(50),
daneKontaktowe VARCHAR(100),
wykonywaneZadania VARCHAR(255),
wykonaneZadania VARCHAR(255),
uwagi VARCHAR(255)
)
After filling out the form, the save_data.php page appears and displays an error: Fatal error: Uncaught mysqli_sql_exception: Access denied for user 'root'@'localhost' in /home/srv344/domains/xxx.pl/public_html/daneserwisu/save_data.php:26 Stack trace: #0 /home/srv344/domains/xxx.pl/public_html/daneserwisu/save_data.php(26): mysqli->__construct('localhost', 'root', '', 'moja_baza') #1 {main} thrown in /home/srv344/domains/xxx.pl/public_html/daneserwisu/save_data.php on line 26
It seems that connecting to the database has failed.
Where did I make a mistake?
I entered the database data 100% correctly.