Так что проблема, с которой я столкнулась, связана с этим базовым упражнением приложения базы данных, которое я делаю из книги. В основном, когда вы пытаетесь добавить продукт в базу данных, как показывает приведенный ниже код, он проверяет, чтобы все поля были заполнены. Но затем, в конце, когда выполняется запрос, и у меня есть include ('home.php'), что-то происходит, когда я возвращаюсь на домашнюю страницу home.php и нажимаю одну из ссылок на этой странице , Я получаю ошибку, которую я получил бы, если одно из полей останется пустым. Есть идеи?Включить функцию php, дающую ошибку из старого кода?
<?php
// Get the product data
$category_id = $_POST['category_id'];
$code = $_POST['code'];
$name = $_POST['name'];
$price = $_POST['price'];
// Validate inputs
if (empty($code) || empty($name) || empty($price)) {
$error = "Invalid product data. Check all fields and try again.";
include('error.php');
} else {
// If valid, add the product to the database
require_once('database.php');
$query = "INSERT INTO products
(categoryID, productCode, productName, listPrice)
VALUES
('$category_id', '$code', '$name', '$price')";
$db->exec($query);
// Display the Product List page
include('home.php') ;
}
?>
home.php без HTML/CSS
<?php
require_once('database.php');
// Get category ID
if(!isset($category_id)) {
$category_id = $_GET['category_id'];
if (!isset($category_id)) {
$category_id = 1;
}
}
// Get name for current category
$query = "SELECT * FROM categories WHERE categoryID = $category_id";
$category = $db->query($query);
$category = $category->fetch();
$category_name = $category['categoryName'];
// Get all categories
$query = "SELECT * FROM categories ORDER BY categoryID";
$categories = $db->query($query);
// Get products for selected category
$query = "SELECT * FROM products
WHERE categoryID = $category_id
ORDER BY productID";
$products = $db->query($query);
?>