запрос посмотри внимательнее, скорее всего в нем грабли зарыты
Открыть
Ответить
Модуль игры на основе модуля файлов
Смотрел я запрос, ничего интересного в нем нет. Кстати, копировал модуль ньюс, при этом данная функция работала вполне нормально... так что тут без бубона не обойтись.
Ну да ладно, это не столь важная вещь. Появился еще один вопрос. Решил сделать некий стимул типа пунктов: при добавлении новой статьи пользователю в специальное поле приплюсовывается еденичка:
Все бы хорошо, но как теперь сделать, чтобы при удалении статьи эта еденичка изымалась?
Функция удаления статьи:
Можно ли в нее как-то доставить переменную $uid ну или запросить ее с базы данных, с тем чтобы затем произвести удаление:
?
Ну да ладно, это не столь важная вещь. Появился еще один вопрос. Решил сделать некий стимул типа пунктов: при добавлении новой статьи пользователю в специальное поле приплюсовывается еденичка:
$db->sql_query("UPDATE ".$prefix."_users SET user_add=user_add+1 WHERE user_id='$postid'");
Все бы хорошо, но как теперь сделать, чтобы при удалении статьи эта еденичка изымалась?
Функция удаления статьи:
case "games_delete": list($url) = $db->sql_fetchrow($db->sql_query("SELECT url FROM ".$prefix."_games WHERE lid=".$id."")); if (file_exists($url)) unlink($url); $db->sql_query("DELETE FROM ".$prefix."_comment WHERE cid='".$id."' AND modul='games'"); $db->sql_query("DELETE FROM ".$prefix."_games WHERE lid='".$id."'"); referer("".$admin_file.".php?op=games"); break;
Можно ли в нее как-то доставить переменную $uid ну или запросить ее с базы данных, с тем чтобы затем произвести удаление:
$db->sql_query("UPDATE ".$prefix."_users SET user_add=user_add-1 WHERE user_id='$uid'");
?
Версия системы: Open SLAED 1.*
Версия PHP: PHP 5
Сервер: Локальный сервер
Смотрел я запрос, ничего интересного в нем нет
запрос не кинокомедия и в нем самое интересное, чтоб он выбирал необходимое количество записей, ваш такое делает, проверяли?
а с новой идеей надо думать так: сделай еще поле для того, чтобы хранить, uid добавившего юзера, ну и если надо, то поле, в котором количество баллов за эту новость, соответственно это же кол-во баллов идет в поле user_add, потом, если удаляем, то минусуем это кол-во у пользователя с id, которое записано в поле uid.
Это так, сходу придумалось, мож кто еще чего посоветует.
запрос не кинокомедия и в нем самое интересное, чтоб он выбирал необходимое количество записей, ваш такое делает, проверяли?
да все делал по аналогии, проверял, не работает. может где-то упустил конечно.
сделай еще поле для того, чтобы хранить, uid добавившего юзера, ну и если надо, то поле, в котором количество баллов за эту новость, соответственно это же кол-во баллов идет в поле user_add, потом, если удаляем, то минусуем это кол-во у пользователя с id, которое записано в поле uid.
ты меня не совсем понял. я сделал поле user_add в таблице users. поле uid в таблице модуля существует, в нем id пользователя, добавившего статью. так вот, при добавлении статьи, пользователю прописывается user_add+1, при этом id юзера равно uid, записываемого в таблицу модуля. но это все понятно и просто, я про это не спрашивал. меня интересует как конкретно достать этот uid из таблицы модуля в функции games_delete. модуль - копия стандартного files для open slaed.
Версия системы: Open SLAED 1.*
Версия PHP: PHP 5
Сервер: Локальный сервер
перед удалением делаешь
ну а после этого делаешь удаление, написанный код не проверял, но вроде как должно работать
$result = $db->sql_query("select uid from $prefix"._comment WHERE cid='".$id."' AND modul='games'"); list($uid) = $db->sql_fetchrow($result); $db->sql_query("UPDATE ".$prefix."_users SET user_add=user_add-1 WHERE user_id='$uid'");
ну а после этого делаешь удаление, написанный код не проверял, но вроде как должно работать
Спасибо. Вообщем запрос оказался проще пареной репы. Но вчера почему-то хоть убейся в голову не приходил.
case "games_delete": list($uid, $url) = $db->sql_fetchrow($db->sql_query("SELECT uid, url FROM ".$prefix."_games WHERE lid=".$id."")); if ($uid != 0) { $db->sql_query("UPDATE ".$prefix."_users SET user_add=user_add-1 WHERE user_id='$uid'"); } if (file_exists($url)) unlink($url); $db->sql_query("DELETE FROM ".$prefix."_comment WHERE cid='".$id."' AND modul='games'"); $db->sql_query("DELETE FROM ".$prefix."_games WHERE lid='".$id."'"); referer("".$admin_file.".php?op=games"); break;
Версия системы: Open SLAED 1.*
Так. Одна проблемка выплыла. Сделал я значит копию ньюс (модуль статей). Все работает вроде, но - когда загружаю изображение в ВВ-редакторе, не создается уменьшенная копия (150*х). Везде копался, толку ноль, ничего не нашел. Папка uploads/pages/thumb пуста, в то время как в папку uploads/pages изображения грузятся вполне нормально. Не могу понять, где искать ошибку, на каком этапе.
Версия системы: Open SLAED 1.*
нужно добавить в файл config_uploads.php
добавить строку
$confup['news2'] = "gif,jpg,jpeg,png|104857600|1048576|500|500|10|150|15|1|1";
Еще нужно добавить в файл admin/modules/uploads.php
Найти строки и дописать:
$mods = array("account", "all", "content", "files", "news", "voting","news2");
$lang = array(_ACCOUNT, _ALL, _CONTENT, _FILES, _NEWS, _VOTING,_NEWS2);
добавить строку
$confup['news2'] = "gif,jpg,jpeg,png|104857600|1048576|500|500|10|150|15|1|1";
Еще нужно добавить в файл admin/modules/uploads.php
Найти строки и дописать:
$mods = array("account", "all", "content", "files", "news", "voting","news2");
$lang = array(_ACCOUNT, _ALL, _CONTENT, _FILES, _NEWS, _VOTING,_NEWS2);
Невнимательно прочитал мое сообщение. Все это я естествено сделал (иначе загрузка файлов не работала бы вообще). Проблема не в этих этих параметрах, потому что я их проверял по несколько раз, а где-то еще.
Версия системы: Open SLAED 1.*