- Баллы
- 153
Код ужасен. Инъекции на каждом шагу. В общем, не рекомендовал бы я этот модуль ставить на свой сайт.
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
Всем не угодишь.Я ожидал всякое но не это
Код:if ($is_logged) { /* Админка */ if($wgr_cfg['admin'] AND (in_array($wgr_cfg['group'], $wgr_cfg['groups']) OR in_array($username, $wgr_cfg['names'])) AND $_POST['token'] == $_SESSION['wg_token_poken'] AND !empty($_POST['token']) AND !empty($_SESSION['wg_token_poken'])){ /* Добавление региона */ if(isset($_POST['add_region']) ) { $picture = $_FILES['picture']; $name = $db->safesql($_POST['name']); $descr = $db->safesql($_POST['descr']); $name_region = $db->safesql($_POST['name_region']); $name_world = $db->safesql($_POST['name_world']); $price_g = abs($_POST['price_g']); $price_r = abs($_POST['price_r']); $max_file_size = 6*1024*1024; //Максимальный размер изображения 6 мб $stop = ''; if($picture['size'] > $max_file_size) { $stop .= 'Превышен размер изображения! '; } if($picture['type'] != 'image/gif' && $picture['type'] != 'image/jpeg' && $picture['type'] != 'image/png' && $picture['type'] != 'image/jpg') { $stop .= 'Разрешено загружать только изображения: png, gif, jpg, jpeg! '; } if(!is_uploaded_file($picture['tmp_name'])){ $stop .= 'Ошибка загрузки изображения! '; //Изображение не найдено в временной папке. Возможно оно не было загружено } $sqlRegion = $db->query('SELECT * FROM `wgr_regions` WHERE `region` = "'.$name_region.'" AND `world` = "'.$name_world.'" AND `player` IS NULL'); if($sqlRegion->num_rows){ $stop .= 'Такой регион уже есть в продаже! '; } if($price_g == 0 AND $price_r == 0) { $stop .= 'Должна быть указана, хоть одна цена!'; } if (in_array(strtolower($name_region), $wgr_cfg['banlist'])) { $stop .= 'Продажа региона "'.$name_region.'" запрещена!'; } if($wgr_cfg['method'] == 'wgmysql'){ $sqlWG_world = $db->super_query("SELECT * FROM `{$wgr_cfg['wgmysql']['wg_world']}` WHERE `name` = '{$name_world}'"); if(!$sqlWG_world['id']){ $stop .= 'Мир '.$name_world.' не найден в базе! '; }else{ $sqlWG_region = $db->super_query("SELECT * FROM `{$wgr_cfg['wgmysql']['wg_region']}` WHERE `id` = '{$name_region}' AND `world_id` = '{$sqlWG_world['id']}'"); if(!$sqlWG_region['id']){ $stop .= 'Регион '.$name_region.' не найден в мире '.$name_world.'! '; } } } if(empty($stop)){ $image_name = time().'_'.totranslit($name_region).'.jpg'; move_uploaded_file($picture['tmp_name'], ROOT_DIR.'/'.$wgr_cfg['path'].'/'.$image_name); $db->query("INSERT INTO `wgr_regions` (`region`, `world`, `picture`, `name`, `descr`, `price_g`, `price_r`) VALUES ('{$name_region}', '{$name_world}', '{$image_name}', '{$name}', '{$descr}', '{$price_g}', '{$price_r}')"); msgexit('Регион успешно добавлен!',true); }else{ msgexit($stop); } }
Что-б я так жил
Код:$soldSuccess = false; $stop = ''; $id = abs($_POST['id']); $sqlRegion = $db->super_query('SELECT * FROM `wgr_regions` WHERE `id` = "' . $id . '" AND `player` IS NULL AND region IS NOT NULL');
Конкретней. Пока-что, это просто слова.Код ужасен. Инъекции на каждом шагу. В общем, не рекомендовал бы я этот модуль ставить на свой сайт.
Изначально делал от корня, а потом чет изменил. Завтра гляну.Не настолько. И где Вы там инъекции нашили? В DLE весь код подобным образом выглядит.
@max--2 использовал бы URL картинки без домена сайта (от корня).PHP:$tpl->set( '{wgr_url_image}', '/'.$wgr_cfg['path'].'/'.$data['picture'] );
Подскажи тогда человеку.А не гнобите,с таким же успехом я и тебя с ДВС усру. Так что пишите по делу а не срите.Код ужасен. Инъекции на каждом шагу. В общем, не рекомендовал бы я этот модуль ставить на свой сайт.
Человек больше на тролля похож. Код может и ужасен, но практически на уровне DLE. Инъекций на каждом шагу точно нет.Подскажи тогда человеку.А не гнобите,с таким же успехом я и тебя с ДВС усру. Так что пишите по делу а не срите.
Потому что сегодня он где то косякнул а завтра начнёшь косячить ты. Так что не будьте серой массой, выручайте друг друга. Сегодня его выручишь ты своим советом,а завтра глядишь и он тебе поможет.
Ну так а что мешает писать чистый и понятный код? Слабо понятно.Человек больше на тролля похож. Код может и ужасен, но практически на уровне DLE. Инъекций на каждом шагу точно нет.
А что мешает написать лучше и не обсырать других?Ну так а что мешает писать чистый и понятный код? Слабо понятно.
В некоторых функциях пришедшие POST параметры никак не экранируются и не проверяются на тип/значение. А значит, можно послать в базу что угодно.
Сохранять данные по регионам в кеш дле, чтобы не отправлять запросы каждый раз? Да нет, зачем оно нужно.
В общем так себе, но для рб пойдет.
Покажи хоть один Post, который не экранируется и идет в запросе в базу. С кэшем возиться я вообще не хочу. Модуль запрашивает всего один запрос. Когда в дле, при обычной загрузке страницы их десятки.Ну так а что мешает писать чистый и понятный код? Слабо понятно.
В некоторых функциях пришедшие POST параметры никак не экранируются и не проверяются на тип/значение. А значит, можно послать в базу что угодно.
Сохранять данные по регионам в кеш дле, чтобы не отправлять запросы каждый раз? Да нет, зачем оно нужно.
В общем так себе, но для рб пойдет.
К примеру, удаление региона.Покажи хоть один Post, который не экранируется и идет в запросе в базу. С кэшем возиться я вообще не хочу. Модуль запрашивает всего один запрос. Когда в дле, при обычной загрузке страницы их десятки.
А что мешает таким умникам не лезть в чужие разговоры?А что мешает написать лучше и не обсырать других?
Твое заумство, вот что мешает. И не отвечай в следующий раз вопросом на вопрос.К примеру, удаление региона.
А что мешает таким умникам не лезть в чужие разговоры?
Во первых это админка, не думаю, что админ будет сам себе делать инъекцию. Либо давать тем людям, которые будут этим заниматься. Но, это все равно не оправдание. И во вторых, чет я там инъекции не вижу.К примеру, удаление региона.
Все есть в конфиге(20-24 строки). И цвет и стиль.Как поменять стиль продаж? как в изображениях!
Во первых это админка, не думаю, что админ будет сам себе делать инъекцию. Либо давать тем людям, которые будут этим заниматься. Но, это все равно не оправдание. И во вторых, чет я там инъекции не вижу.
Все есть в конфиге(20-24 строки). И цвет и стиль.
Спасибо. Доработка будет.В общем удачи в доработках. Советую где то прислушаться. В целом молодец, буду смотреть на новые.
По поводу - Отображение проданных регионов.
Может добавлять каждый проданный регион в базу. (может я что то не догоняю, конечно, но думаю это не сложно)
Уж надеемсяСпасибо. Доработка будет.

Он вроде как покинул этот форум...Где @Vladlen_198, он уже готовит свой отчет по поводу кода ))
Ага... Без него скучноОн вроде как покинул этот форум...