- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
if ($_SESSION['USER_LOGIN_IN']) {
if ($Page != 'notice') {
$Num = mysqli_fetch_row(mysqli_query($CONNECT, "SELECT COUNT(`id`) FROM `notice` WHERE `status` = 0 AND `uid` = $_SESSION[USER_ID]"));
if ($Num[0]) MessageSend(2, 'У вас есть непрочитанные уведомления. <a href="/notice">Прочитать ( <b>'.$Num[0].'</b> )</a>', '', 0);
}
$Count = mysqli_fetch_row(mysqli_query($CONNECT, "SELECT COUNT(`id`) FROM `dialog` WHERE `recive` = $_SESSION[USER_ID] AND `status` = 0"));
if ($Count[0]) MessageSend(2, 'У вас есть непрочитанные диалоги ( <b>'.$Count[0].'</b> )', '', 0);
}
Кто хочет, может использовать данную уязвимость, потому что автор сего говна имеет сайт своего паршива, написанного по его же говноурокам. http://php.webtm.ru/
Архивы с говнокодом(больше лулзов) можно скачать тут http://php.webtm.ru/archive/
Группа вконтактке тут http://vk.com/php.youtube
Страничка автора говноуроков(да он думал что может скрыться) http://vk.com/vyjt3dfc1azyr0lilcq ранее назывался Артем Кодов
чувак
ты сделал мой день
действительно. Все сессии же на сервере, все нормально с этим кодом
из говна if ($_SESSION['USER_LOGIN_IN'])
ну и без mvc
расскажи мне что там у вас поменялось )
>`recive` = $_SESSION[USER_ID] AND `status` = 0"
Для чего тут препаред стейтмента ? для циферки которыю ты сам в сесию ложишь или для `status` = 0" ?
Или не в пхп
усливния пишут вот так
if (cond==1) {
if (cond==1){
// .........
}
}
что бы не наебаться?
Гуесто, что за хуйню ты несешь постояно? Я уже знаю что пхп ты не осилил. Чего ты ещё хочешь?
препаред стейтмент как бы для recive` = $_SESSION[USER_ID]
пыхоблядям неведома польза подготовленных выражений?
ну там, кеш планировщика запросов, например, или безопасность инжекта выражений?
А не ебошат хуйню, что бы как все.
> кеш планировщика запросов,
SELECT COUNT(`id`)
что он закеширует ?
>безопасность инжекта выражений?
$_SESSION[USER_ID]
`status` = 0
где тут возможность подмены.
В сессию программист сам присваивает значения.
Вы тоже ебошите if (cond) {if (cond){} } ? от не уверенности в себе?
Программист 1 должен руководствоваться целесообразностью.
Если в место того что бы сложить 1 +1 программист будет лепить очереди. То гнать его из профессии.
А теперь вопрос назовить хоть 1 причину для использования препаред стейтмент для запроса
"SELECT COUNT(`id`) FROM `dialog` WHERE `recive` = $_SESSION[USER_ID] AND `status` = 0"
Не для запросов в вакууме, а конкретно для этого запроса
лол, это стандартная отмазка говнокодера. Целесообразность тут не причем вообще.
>>где тут возможность подмены.
строчкой выше $_SESSION['USER_ID'] = "; DROP DATABASE"'
>>А теперь вопрос назовить хоть 1 причину для использования препаред стейтмент для запроса
как было сказано выше -- чтобы не строить дважды план запроса
или ты не знаешь как работает планировщик?
ну я так и думал, ты же пхпист
потому что майскл лучшая субд, думать не следует, она всё равно нихуя не умеет
> где тут возможность подмены.
я вижу динамическое значение в запросе - эта возможность вот там
просто пыхопе такое уебище, что там настоящей проффессиональной пыхобляди неудобно написать sql в одном месте, а подставить аргументы - в другом
Василий, использовать подготовленные запросы везде, где есть динамический аргумент - это как руки перед едой мыть, ну или в душ перед ёблей сходить
только кому-то это дико, кому-то нравится сосать в грязном туалете и говорить, что это норма
$db->exec(' .... where user_id= '.$_SESSION['USER_ID']);
Давай расскажи мне про динамический аргумент. И беги обмазываться абстракцией.
ахахаха
оказывается ты просто не знаешь даже что такое параметры для prepared statement
пиздец
В БД есть анализатор запросов, который строит план. Когда он видит что запрос изменился, он вынужден заново строить план.
Потому в нормальных БД и нормальных языках используют препаред стейтменты, где запрос не меняется, а туда просто подставляются параметры.
даже в php так можно
http://php.net/manual/en/pdostatement.bindparam.php
но ты не знал
>>где тут возможность подмены.
строчкой выше $_SESSION['USER_ID'] = "; DROP DATABASE"'
сам попробуй сделать что ты написал. Когда получится тогда приходи.
Ты еблан пизди еще. Я хоть поржу.
я же говорю: PHP "программисты" даже PHP не знают
Смотрите, уязвимый PHP, уязвимые программисты! Перед каждой строчкой можно написать mysql_query("DROP DATABASE pitux");
программист всегда отвечает за свой код, потому всегда можно юзать глобальные переменные. И все в одном файле писать. И логику с SQL и с HTML мешать. Потому что программист же не уязвим
Пожалуй, придётся согласиться, что страховка не помешает.
Каждый такой запрос будет разбираться и компилироваться отдельно. Итого выражение будет компилироваться 9000 раз.
А теперь воспользуемся подготовленными выражениями:
В этом случае выражение будет скомпилировано один раз, а 9000 раз будет только подставлено значение параметра.
- чтобы не тратить своё рабочее время на анализ каждого запроса и выбор "целесообразного для него приёма";
- чтобы потом, когда в этом запросе появится ещё какое-нибудь поле, не приходилось всё переписывать к хуям на препаред стейтменты.
Или единообразие и простота поддержки для PHP'шника не аргумент? Надо хуярить уникальный код под каждый кейс?
пыхоблядь пишет сайт за 30т.р. за 2 недели и перестает брать трубку
другая пыхоблядь берёт ещё 1-2 недели, дописывает сайт, добавляя в него ещё столько же пыходерьма, где намешаны sql и html, берёт 30т.р. и спираль истории повторяется
какое единообразие, какая простота поддержки??
Тариф «Как у всех»: сделаем, как только брат нашего специалиста освободит компьютер.
Тариф «Как у всех+»: пока мы просто собираем заявки,
а потом сделаем все сайты разом!
Тариф «Крутой»: управимся за 2 недели!
--да
--а почему шепотом?
--я на алгебре
достаточно грамотный, чтобы понимать что хуево писать без препаред стейтмента (достаточно погуглить php sql injection, ни в одном ЯП больше нет таких проблем) и и что хуево вшивать драйвер конкретной базы
у вас, бабуинов, PDO уже 15 лет как есть. но ни одна мартышка его не освоила. А зачем? Денис попов так писал, и мы так будем
http://vk.com/php.mrshift
Да, айдишник группы всё тот же: http://vk.com/wall-91807331
Это свидетельствует о том, что php.youtube — это переименованная группа php.mrshit php.mrshift
https://forum.mtasa.com/viewtopic.php?p=604894
Лучше скажи почему у парня 69 на аватаре
Поздравляем, таким действием мы убили библиотеку table
Цитата со стены "ТЫ ЛАШАРА КОНСКАЯ ВЗЛОМАЛ С*КА!!!!!!!!!!!
ВСЕ МОИ ДРУЗЯ ЭТО НЕ МОЯ СТРАНИЦА ДОБАВЬ НАСТОЯЩЕГО МЕНЯ Я http://vkontakte.ru/id85947091"
Да, раньше оно называло себя Артёмом.
Там тебе высылают 10 яндекс кошельков, и нужно на каждый перевести по 10 рублей, а потом первый удалить, а внизу вписать свой, и разместить на как можно бОльшем количестве форумов.
Это кстати очень типичный вид деятельности в российском PHP сообществе.
Давайте я Вам расскажу. Вы наверное подумали "фу, это очередной спам", но дочитайте до конца! этот метод навсегда изменил мою жизнь. Давайте сюда Ваш емейл