Add .gitignore and project files
This commit is contained in:
131
test_add_simple.php
Normal file
131
test_add_simple.php
Normal file
@@ -0,0 +1,131 @@
|
||||
<?php
|
||||
// test_add_simple.php - максимально простая форма добавления
|
||||
session_start();
|
||||
|
||||
// Временно отключаем проверку админа для теста
|
||||
// if (!isset($_SESSION['isAdmin']) || $_SESSION['isAdmin'] !== true) {
|
||||
// die("Требуется авторизация администратора");
|
||||
// }
|
||||
|
||||
require_once 'config/database.php';
|
||||
$db = Database::getInstance()->getConnection();
|
||||
|
||||
// Обработка формы
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
$action = $_POST['action'] ?? '';
|
||||
|
||||
if ($action === 'add_category') {
|
||||
$name = $_POST['name'] ?? '';
|
||||
$slug = preg_replace('/[^a-z0-9]/i', '-', strtolower($name));
|
||||
|
||||
try {
|
||||
$stmt = $db->prepare("INSERT INTO categories (name, slug) VALUES (?, ?)");
|
||||
$result = $stmt->execute([$name, $slug]);
|
||||
|
||||
if ($result) {
|
||||
$message = "✅ Категория '$name' успешно добавлена!";
|
||||
$message_class = "success";
|
||||
} else {
|
||||
$message = "❌ Ошибка при добавлении категории";
|
||||
$message_class = "error";
|
||||
}
|
||||
} catch (PDOException $e) {
|
||||
$message = "❌ Ошибка БД: " . $e->getMessage();
|
||||
$message_class = "error";
|
||||
}
|
||||
}
|
||||
|
||||
if ($action === 'add_product') {
|
||||
$name = $_POST['product_name'] ?? '';
|
||||
$price = floatval($_POST['price'] ?? 0);
|
||||
$category_id = intval($_POST['category_id'] ?? 1);
|
||||
$slug = preg_replace('/[^a-z0-9]/i', '-', strtolower($name));
|
||||
|
||||
try {
|
||||
$stmt = $db->prepare("INSERT INTO products (category_id, name, slug, price, stock_quantity, is_available) VALUES (?, ?, ?, ?, ?, ?)");
|
||||
$result = $stmt->execute([$category_id, $name, $slug, $price, 10, true]);
|
||||
|
||||
if ($result) {
|
||||
$message = "✅ Товар '$name' успешно добавлен!";
|
||||
$message_class = "success";
|
||||
} else {
|
||||
$message = "❌ Ошибка при добавлении товара";
|
||||
$message_class = "error";
|
||||
}
|
||||
} catch (PDOException $e) {
|
||||
$message = "❌ Ошибка БД: " . $e->getMessage();
|
||||
$message_class = "error";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Получить категории для выпадающего списка
|
||||
$categories = [];
|
||||
try {
|
||||
$categories = $db->query("SELECT * FROM categories")->fetchAll();
|
||||
} catch (Exception $e) {
|
||||
$categories_error = "Ошибка получения категорий: " . $e->getMessage();
|
||||
}
|
||||
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<title>Тестовое добавление</title>
|
||||
<style>
|
||||
body { font-family: Arial, sans-serif; padding: 20px; }
|
||||
.message { padding: 10px; margin: 10px 0; border-radius: 5px; }
|
||||
.success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
|
||||
.error { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
|
||||
form { margin: 20px 0; padding: 20px; border: 1px solid #ddd; border-radius: 5px; }
|
||||
input, select, button { padding: 8px; margin: 5px 0; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Тестовое добавление</h1>
|
||||
|
||||
<?php if (isset($message)): ?>
|
||||
<div class="message <?= $message_class ?>"><?= $message ?></div>
|
||||
<?php endif; ?>
|
||||
|
||||
<form method="POST">
|
||||
<h2>Добавить категорию</h2>
|
||||
<input type="hidden" name="action" value="add_category">
|
||||
<input type="text" name="name" placeholder="Название категории" required>
|
||||
<button type="submit">Добавить категорию</button>
|
||||
</form>
|
||||
|
||||
<form method="POST">
|
||||
<h2>Добавить товар</h2>
|
||||
<input type="hidden" name="action" value="add_product">
|
||||
<input type="text" name="product_name" placeholder="Название товара" required><br>
|
||||
<input type="number" name="price" placeholder="Цена" required step="0.01"><br>
|
||||
|
||||
<select name="category_id">
|
||||
<?php if (!empty($categories)): ?>
|
||||
<?php foreach ($categories as $cat): ?>
|
||||
<option value="<?= $cat['category_id'] ?>"><?= htmlspecialchars($cat['name']) ?></option>
|
||||
<?php endforeach; ?>
|
||||
<?php else: ?>
|
||||
<option value="1">Нет категорий (используется ID 1)</option>
|
||||
<?php endif; ?>
|
||||
</select><br>
|
||||
|
||||
<button type="submit">Добавить товар</button>
|
||||
</form>
|
||||
|
||||
<hr>
|
||||
|
||||
<h2>Существующие категории (<?= count($categories) ?>):</h2>
|
||||
<ul>
|
||||
<?php foreach ($categories as $cat): ?>
|
||||
<li>ID: <?= $cat['category_id'] ?> - <?= htmlspecialchars($cat['name']) ?></li>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
|
||||
<?php if (isset($categories_error)): ?>
|
||||
<div class="message error"><?= $categories_error ?></div>
|
||||
<?php endif; ?>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user