LINUX.ORG.RU

PHP

 , ,


0

1

Вообщем вопрос странный.

2 месяца назад я делал самописный движок на PHP. И всё работало нормально, но потом я решил проверить работу и почему-то запись в БД не осуществляется, до этого всё работало и запись в БД в админке осуществлялась, данные из БД выводятся. Данные из формы тоже передаются. В остальных PHP кодах всё работает запись в бд осуществляется. Админ-панель лежит в другой папке и использует те же файлы, что и в пользовательской части. В чём может быть дело? И почему данные не записываются в БД?

Солнце находится в Водолее, слабом для себя положении. Сложные информационные потоки плохо транслируются и если человек занят волеизъявлением, он ничего не поймет.

Psilocybe ★★★★
()

Выполнить голый insert и, в случае ошибки, БД напишет причину.

Вчера только столкнулся с The Primary Filegroup is full при записи.

Ну или…

2 месяца назад

Может был какой-то костыль нюанс, который ты забыл за это время.

У меня после такого перерыва погружение в свой код похоже на прогулку по кладовке, без света, с разбросанными на полу граблями.

PhysShell ★★
()

Для начала, подключение вообще проходит?
Может ты забыл службу MariaDB запустить, или что у тебя там?

IIIypuk ★★★★
()

Чтобы отловить ошибку, создай пустой файл и как уже советовали, попробуй подключиться к БД и мделать INSERT.
Там по ошибке видно будет, в чем была проблема

IIIypuk ★★★★
()
Последнее исправление: IIIypuk (всего исправлений: 1)
Ответ на: комментарий от derlinux

Сначало я писал свою cms на PDO и с помощью функций, потом для регистрации я использовал RedBeanPHP. У меня ещё был старый скрипт чата, я его писал ещё в прошлом году и там всё было на mysqli т.к я переписывать его будет долго я решил оставить его без изменений.

derlinux
() автор топика
Ответ на: комментарий от derlinux

Ну тут тебе так просто не помогут. Ты даже ошибку не скинул.
Запусти в директории с проектом отладочный сервер php -S 127.0.0.1 и открой страницу в браузере.

В консоли, где ты запустил php будет лог ошибок с её названием и строкой в файле.

Так будет проще отлаживать.

Ну лиьо скинь исхожники и я на досуге завтра посмотрю. Только SQL CREATE таблиц не забудь

IIIypuk ★★★★
()
Последнее исправление: IIIypuk (всего исправлений: 1)

При выполнении проверки наличия записи в БД было произведено обнаружение ее отсутствия?

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 1)
Ответ на: комментарий от derlinux

я написал скрипт для проверки:

pod_tst.php

<?php
require_once ("../conn.php");
require_once ('cls/Article.class.php');

$th = new Article('title');
$th->insert('$title', '$content','$keywords', '$desc', '$category', '$usr', '$type', '$user_id',$conn);
?>

conn.php

<?php
ob_start();

#error_reporting(0);
$dbname = 'cms';
$conn = new PDO("mysql:host=localhost;dbname=$dbname", 'root', '');
// Проверяем соединение
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";

функция insert из cls/Article.class.php

public function insert($title, $content, $keywords, $desc, $category, 
  			$usr, $type, $user_id, $conn) {
			$query = "INSERT INTO `articles` (`title`, `content`, `author`, `category`, `date`,
			`keywords`,`description`, `type`, `user_id`) 
			VALUES ('$title', '$content', '$usr', '$category', NOW(),'$keywords','$desc','$type','$user_id')";
			$res = $conn->query($query);
		}
derlinux
() автор топика
Ответ на: комментарий от derlinux

запись в таблице articles есть, но она не выводится

derlinux
() автор топика
Ответ на: комментарий от derlinux

query возвращает несколько значений, нужно через fetch перегонять.

singleQuery возвращает одно значение

IIIypuk ★★★★
()
5 июня 2022 г.

2 месяца назад я делал самописный движок на PHP

Дальше, в принципе, можно даже не читать.

dimuska139 ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.