PHP SQLite Не записывает данные в базу
интересная ситуация. Написал небольшой чат на PHP с авторизацией перед каждой отправкой сообщения, но это не суть. На локальном компьютере всё работало хорошо, данные из базы читались и в базу записывались, а вот когда загрузил всё на сервер, работать не перестал только скрипт по чтению данных из БД. Система - Linux Debian11 Php7.4, Установлена php7.4-sqlite. На файле базы данных стоит 777 разрешение. Сам Php скрипт отрабатывает хорошо, без ошибок, но данные в базе не появляются Пожалуйста, помогите. Ниже скрипт
<?php
// Установите соединение с базой данных SQLite
$db = new PDO('sqlite:database.db');
// Получаем данные из POST-запроса
$nickname = $_POST['nickname'];
$password = $_POST['password'];
$message = $_POST['message'];
// Проверяем, существует ли пользователь с таким никнеймом
$query = 'SELECT * FROM users WHERE nickname = :nickname';
$stmt = $db->prepare($query);
$stmt->bindParam(':nickname', $nickname);
$stmt->execute();
$user = $stmt->fetch(PDO::FETCH_ASSOC);
if (!$user) {
if(!($password == "") && !($nickname == "") && !($message == ""))
{
// Если пользователь не существует, создаем нового пользователя
$insertQuery = 'INSERT INTO users (nickname, password) VALUES (:nickname, :password)';
$insertStmt = $db->prepare($insertQuery);
$insertStmt->bindParam(':nickname', $nickname);
$insertStmt->bindParam(':password', $password);
$insertStmt->execute();
$insertMessageQuery = 'INSERT INTO messages (nickname, message) VALUES (:nickname, :message)';
$insertMessageStmt = $db->prepare($insertMessageQuery);
$insertMessageStmt->bindParam(':nickname', $nickname);
$insertMessageStmt->bindParam(':message', $message);
$insertMessageStmt->execute();
$report = "";
// Преобразование отчета в JSON
$response = array('report' => $report);
$responseJson = json_encode($response);
// Возвращение отчета в JSON формате
echo $responseJson;
}
else{
$report = "Не оставляйте поля пустыми!";
// Преобразование отчета в JSON
$response = array('report' => $report);
$responseJson = json_encode($response);
// Возвращение отчета в JSON формате
echo $responseJson;
exit;
}
} else {
// Проверяем правильность пароля
if ($user['password'] === $password) {
$insertMessageQuery = 'INSERT INTO messages (nickname, message) VALUES (:nickname, :message)';
$insertMessageStmt = $db->prepare($insertMessageQuery);
$insertMessageStmt->bindParam(':nickname', $nickname);
$insertMessageStmt->bindParam(':message', $message);
$insertMessageStmt->execute();
$report = "";
// Преобразование отчета в JSON
$response = array('report' => $report);
$responseJson = json_encode($response);
// Возвращение отчета в JSON формате
echo $responseJson;
} else {
// Возвращаем ошибку, если пароль неверный
$report = "Пользователь уже зарегистрирован - вы ввели неверный пароль.";
// Преобразование отчета в JSON
$response = array('report' => $report);
$responseJson = json_encode($response);
// Возвращение отчета в JSON формате
echo $responseJson;
exit;
}
}
?>