<MyRusakov.ru />

React JS, Redux, ES2015 с Нуля до Гуру

React JS, Redux, ES2015 с Нуля до Гуру

Данный курс - это обширный курс по JavaScript и фреймворку React, который позволит Вам с нуля создавать мощные современные, динамические JavaScript-приложения.

Вы узнаете о тонкостях работы с "профессиональным" JavaScript, а так же узнаете о нововведениях в его новый стандарт ES2015, Вы узнаете, как организовать профессиональное окружение для FrontEnd, изучите профессиональный фреймворк - ReactJS.

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

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Удаление файлов
26.07.2013 14:36:41 Удаление файлов Сообщение #1
shamil

shamil

Продвинутый

Продвинутый

Дата регистрации:
17.03.2013 00:07:27

Сообщений: 51

вот запрос,который исправил:
<?php
function checkCommentOwner($user_id, $comment_id) {
if (!(checkUser($_SESSION['login'], $_SESSION['password']))) return false; //проверяем авторизован ли пользователь
$mysqli = new mysqli("localhost", "shamil_h", "a1a2a3", "shamil_comm"; //подключаемся к базе
$result_set = $mysqli->query("SELECT `owner_id` FROM `guestbook` WHERE `id` = '$comment_id'"; //узнаём id пользователя (owner_id) который написал этот комент
$user = $result_set->fetch_assoc();
$owner_id = $user['owner_id'];
return $user_id == $owner_id; //сравниваем id хозяина коммента и id который передали функции
}
?>


структура таблицы:guestbook
id
names
comment
date
owner_id

и файл delete_comment.php:
<?php
if (isset($_GET['comment'])) {
$id = $_GET['comment']; //берём id коммента из GET-параметра
$mysqli = new mysqli('localhost', 'shamil_h', 'a1a2a3', 'shamil_comm'); //подключаемся к MySQL
$mysqli->query("DELETE FROM `guestbook` WHERE `id` = '$id'"; //удаляем запись из таблицы
$mysqli->close(); //закрываем соединение

header("Location: http://tin-l.ru/admin/guestbook.php";
}
?>


а с самой страницы id отправляется в
файл delete_comment.php
$id = $comments[$i]["id"];
Профиль Ответить
26.07.2013 19:49:16 Удаление файлов Сообщение #2
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

На будущее: не пишите название таблиц в апострофах (`)

SELECT `owner_id` FROM `guestbook` WHERE `id` = '$comment_id'
В апострофах пишутся только названия полей в таблице!

Так же Вы забыли закрыть соединение с БД в функции checkCommentOwner

В условии не надо ставить 3 скобки (не в этом случае).

if (!(checkUser($_SESSION['login'], $_SESSION['password']))) return false;
Профиль Ответить
27.07.2013 11:58:31 Удаление файлов Сообщение #3
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

Вот Вам архив с примером http://yadi.sk/d/9lpv6pvf7Gaiy

Скачайте, посмотрите как всё работает и адаптируйте пример под себя.

P.S. В owner_id не должно быть нулей! Туда при добавлении комментария записывайте id автора комментария.
Профиль Ответить
29.07.2013 13:05:08 Удаление файлов Сообщение #4
shamil

shamil

Продвинутый

Продвинутый

Дата регистрации:
17.03.2013 00:07:27

Сообщений: 51

это обработка на странице,где возможная ошибка,все нормально удаляется,но в поле owner_id-0,не поступает id
if ($_GET['comment'] == 'delete') {
$comment_id = $_GET['id'];

$operation_result = deleteComment($comment_id);

}
$guestbook = getAllGuestBookComments();

....................
это обработка
в functions.php:
function deleteComment($id) {
if ($id == '') return false;
$mysqli = connectDB();
$result_set = $mysqli->query("DELETE FROM guestbook WHERE `id` = '$id'"; //удаляем запись из таблицы
closeDB($mysqli);
return $query;
}

и
function checkCommentOwner($user_id, $comment_id) {
if (!checkUser($_SESSION['login'], $_SESSION['password'])) return false; //проверяем авторизован ли пользователь
$mysqli = connectDB();
$result_set = $mysqli->query("SELECT `owner_id` FROM guestbook WHERE `id` = '$comment_id'"; //узнаём id пользователя (owner_id) который написал этот комент
$owner_id = $user['owner_id'];
$user = $result_set->fetch_assoc();
closeDB($mysqli);
return $user_id == $owner_id; //сравниваем id хозяина коммента и id который передали функции
}

вот в поле owner_id ничего не поступает.может обнаружите ошибку?
Профиль Ответить
29.07.2013 13:20:58 Удаление файлов Сообщение #5
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

$owner_id = $user['owner_id'];
$user = $result_set->fetch_assoc();

Местами их поменяйте!!! Вы сначала присваивайте переменной значение из массива, а уже потом создаёте массив! Так делать нельзя!

Покажите функцию добавления коммента в таблицу.

P.S. Давайте свой скайп, я Вам покажу как всё должно быть. А то так мы очень долго будем искать Ваши ошибки.
Профиль Ответить
29.07.2013 17:17:30 Удаление файлов Сообщение #6
shamil

shamil

Продвинутый

Продвинутый

Дата регистрации:
17.03.2013 00:07:27

Сообщений: 51

только что зарегестрировался
shamil.shakirov2
Профиль Ответить