Модератор форума: LightInDarkness |
Форум Web раздел Сайты / WWW для эмуляторов [Сайт] АдминПанель R-CMS |
[Сайт] АдминПанель R-CMS |
Нет, ну и ладно, не это есть важная часть кода...
Сообщение # 32 написано 20.03.2012 в 19:52
|
В архиве, в инструкции по установке, написано, что если чего-то нет, то эти пункты пропускаются - отменены в данной версии. Сейчас в активной разработке 1.8, пока есть на закрытом тестировании 1.7d с дизайном от mr_avenger, сейчас лежу в больнице, нет возможности выпустить в паблик.
Как выпешусь, выпущу и AP.R-CMS(1.7d, если на долго не затянется, то 1.8) и саму R-CMS(недопиленую демо-версию можно глянуть у меня в подписи) в которой осталось буквально пару страничек сделать и доделать дизайн. Добавлено (07.04.2012, 20:32)
Сообщение # 34 написано 07.04.2012 в 20:32
|
Quote (Quintessence) У меня так идея появилась, почему бы не сделать вместо preg_match"ращрешенные значения" - !preg_match"не разрешенные значения"? Quote (Quintessence) Имеет ли такое действие смысл? Просто я не знаю как в допустимые значения добавить кирилицу. И всё же добавлю пример (для utf-8): "preg_match('/^[а-я]+$/iu', 'Слово')" - вернёт true, а "preg_match('/^[а-я]+$/iu', 'Slovo')" - false. |
Code preg_match('/^[а-я]+$/iu', 'Слово')" - вернёт true В этом примере ошибка, и вернет False. Т.к. в одз не входят значения верхнего регистра. Моя задача: с помощью preg_match сделать невозможными SQL-Инъекции. Тоесть достаточно запретить символы " '); ". Но ) и ; достаточно часто встречающиеся символы в пунктуации -> их надо разрешить. Возможно есть способ, чтобы запретить выполнять запросы если именно в такой последовательности использованы символы - ');
Сообщение # 36 написано 08.04.2012 в 04:39
|
Quote (Quintessence) в одз не входят значения верхнего регистра Читайте про модификаторы. i - учитывает и верхний, и нижний регистры. Quote (ToMuse) /^[а-я]+$/iu Букву ё не затрагивает данный интервал. Необходимо указать эту букву явно: '/^[а-яё]+$/iu' Добавлено (08.04.2012, 05:00) Quote (Quintessence) сделать невозможными SQL-Инъекции Для этого существуют подготовленные выражения.
Это предложение ложно!
Сообщение # 37 написано 08.04.2012 в 05:00
|
Dedmaroz, спасибо! Разобрался.
Еще вопрос: Возможно ли это использовать как поисковик? Code $search = "Поисковый запрос"; $query = "SELECT id,cat,title,prev FROM data WHERE text like '%$search%'"; $result = mysql_query($query); if (!$result){ echo "Ошибка при запросе"; exit(mysql_error()); } $myarray = array(); $n = mysql_num_rows($result); for($i = 0; $i < $n; $i++){ $myarray[] = mysql_fetch_array($result); } foreach($myarray as $value){ echo $value['title'].'<br/>'; echo $value['text'].'<hr/>'; }
Сообщение # 38 написано 08.04.2012 в 07:19
|
Code for($i = 0; $i < $n; $i++){ $myarray[] = mysql_fetch_array($result); } foreach($myarray as $value){ echo $value['title'].'<br/>'; echo $value['text'].'<hr/>'; } топить в сартире за такое
Сообщение # 39 написано 08.04.2012 в 07:40
|
Mago_De_Sombra, ты как всегда.
Сообщение # 40 написано 08.04.2012 в 07:48
|
Quote (Quintessence) В этом примере ошибка, и вернет False. Т.к. в одз не входят значения верхнего регистра. Я так понял вы так и не прочитали про регулярные выражения. Так почему хотя бы без элементарной проверки высказываете не верные заключения? Почему при указании Mago_De_Sombra на ваш явный говнокод не спросить у него почему это не рационально и как сделать лучше? Вы собираетесь выпендриваться и писать "абы работало" или слушать, читать полезную информацию и принимать к сведению что бы в итоге научиться писать рациональный код!? Quote (Quintessence) Моя задача: с помощью preg_match сделать невозможными SQL-Инъекции.
Сообщение # 41 написано 08.04.2012 в 13:37
|
Не сильно то он и помогает.
Я написал - МОЯ ЗАДАЧА, вы мне говорите про задачи функции. Я знаю зачем эта функция и я примерно представляю, что я хочу сделать. И я это делаю. А ваш Mago_De_Sombra, истинный хам, за все время нахождения в этой теме он ничего толкового не сказал. И вообще, все это я делаю сугубо для себя, сюда выложил т.к. мне не жалко, пускай перет кто угодно. И я попросил писать про ошибки(вдруг кто-то что-то в этом мыслит). Про ошибки мне написали, я стал исправлять. Наткнулся на ошибку, причиной которой - незнание. Да, я никогда в плотную не работал с формами, и я сейчас работая над этой админ панелью совершенствую свои знания. Добавлено (08.04.2012, 14:40)
Сообщение # 42 написано 08.04.2012 в 14:40
|
Quote (Quintessence) А ваш Mago_De_Sombra, истинный хам, за все время нахождения в этой теме он ничего толкового не сказал. Не сильно то он и помогает. Quote (Quintessence) Я написал - МОЯ ЗАДАЧА, вы мне говорите про задачи функции. Я знаю зачем эта функция и я примерно представляю, что я хочу сделать. И я это делаю. Использовать preg_match (таким способом как вы указывали выше) для защиты от sql инъекций это тоже самое что и вот так разбирать результат запроса: Code for($i = 0; $i < $n; $i++){ $myarray[] = mysql_fetch_array($result); } foreach($myarray as $value){ echo $value['title'].'<br/>'; echo $value['text'].'<hr/>'; } Quote (Quintessence) работая над этой админ панелью совершенствую свои знания. Ничего не добьетесь в этом плане если не научитесь правильно воспринимать критику.
Сообщение # 43 написано 08.04.2012 в 14:40
|
Вашу и еще некоторых личностей я критику абсолютно верно воспринимаю и отдаю себе отчетность, что моя работа далеко от совершенства.
Всем спасибо, все учту:) Как вы думаете, mysql_escape_string - функция для экранирования спец. символов, достаточно ли этого для защиты MySQL от инъекций?
Сообщение # 44 написано 08.04.2012 в 18:19
|
Quote (Quintessence) Как вы думаете, mysql_escape_string - функция для экранирования спец. символов, достаточно ли этого для защиты MySQL от инъекций? В таком случае mysql_real_escape_string что бы кодировку соединения учитывать. И вообще это довольно странный вопрос. Ведь в php мануале написано, цитирую "Экранирует специальные символы в unescaped_string, принимая во внимание кодировку соединения, таким образом, что результат можно безопасно использовать в SQL-запросе в функции mysql_query(). Если вставляются бинарные данные, то к ним так же необходимо применять эту функцию.". Или заявление разработчиков для вас не авторитет? А гуглом вы умеете пользоваться? Думаю что ответы на все типичные вопросы там есть. Quote (Quintessence) Вашу и еще некоторых личностей я критику абсолютно верно воспринимаю Нужно воспринимать всю. Ведь часто бывает что чем грубее человек себя ведёт, тем больше он знает.
Сообщение # 45 написано 08.04.2012 в 18:28
|
ToMuse, все, спасибо, понял. Исправлюсь.
Давайте не будем продолжать спор, будем интелегентными и разумными людьми! P.s. и выпьем по бутылочке пива;)
Сообщение # 46 написано 08.04.2012 в 18:34
|
Просто то, что он сделал намного приятнее выглядит, чем мои таблицы...
Сообщение # 48 написано 08.04.2012 в 19:11
|
мне вот интересно зачем там так мгного конфигоф + в фаилах почти в каждом подключения к бд? типа
Quote mysql_selectdb("$admindb", $connect); mysql_query('SET NAMES CP1251'); Добавлено (08.04.2012, 23:16) Добавлено (08.04.2012, 23:16) Добавлено (08.04.2012, 23:24)
Сообщение # 51 написано 08.04.2012 в 23:24
|
Quintessence, "наш" Mago_De_Sombra отлично разбирается в поставленном вопросе и ненавидит школоту, которая не читая мануалов, не понимая принципов программирования, пишет всякую хренотень и бежит на сей авторитетный ресурс плюсы фармить.
Сообщение # 52 написано 09.04.2012 в 03:18
|
IGRIKRUS, mysql_selectdb это не подключение, это выбор базы данных, а в разных модулях используются разные базы данных.
Много конфигов. Я уже говорил, это из-за того, что я использовал чужую авторизацию. Мой код не имеет нималейшего отношения к Разарту. Инсталятор выполняет 2 задачи: 1. Создание всех необходимых баз данных; 2. Регистрация пользователей. Mago_De_Sombra, Ненавидьте школоту дальше, флаг вам в руки. Программированием я занимаюсь давольно долго, просто решил подтянуть свои умения в php. Плюсы мне нафиг не нужны, знаете ли. И вообще, почему вы всегда предвзято относитесь к людям? Почему, если я, в свое развлечение и убийство времени, решил написать небольшую фигню, то это означает, что я это делаю только для этого ресурса? Мне этот ресурс даром не нужен, просто я подумал, что здесь есть такие люди как вы, которые смогут дать объективные ответы на мои вопросы. И я был в растеряности вместо ответов услышать фразы... Даже не буду их повторять, воспитан не так. Я думаю вам все же стоит пересмотреть свое отношение к моей личности и сделать соответствующие умозаключения. И все же жду конструктивной критики и советов от вас, знаю, что вы отлично разбираетесь в этой теме.
Сообщение # 53 написано 09.04.2012 в 04:23
|
Quote (Quintessence) Программированием я занимаюсь давольно долго аха. Именно поэтому вы делаете 1 цикл, что бы собрать инфу в 1 массив, а затем другой цикл, что бы эту инфу вытянуть. Адекватный совет? легко. Code $search = "Поисковый запрос"; $query = "SELECT id,cat,title,prev FROM data WHERE text like '%$search%'"; $result = mysql_query($query); if (!$result){ echo "Ошибка при запросе"; exit(mysql_error()); } $myarray = array(); $n = mysql_num_rows($result); for($i = 0; $i < $n; $i++){ $myarray[] = mysql_fetch_array($result); } foreach($myarray as $value){ echo $value['title'].'<br/>'; echo $value['text'].'<hr/>'; } Вся эта шняга отлично заменяется на Code $search = "Поисковый запрос"; $search = mysql_real_escape_string(search); $query = "SELECT id,cat,title,prev FROM data WHERE text like '%" . $search . "%'"; $result = mysql_query($query); while ($row = mysql_fetch_array($result)) { echo ($value['title'] . '<br/>', $value['text'] . '<br/>'); } Но это вариант для тех, кто понимает программирование.
Сообщение # 54 написано 09.04.2012 в 04:50
|
Да, действительно, с while все намного проще, спасибо!
Сообщение # 55 написано 09.04.2012 в 05:06
|
при любом варианте (вайл/форич/фор) это делается максимум в пару строк
Сообщение # 56 написано 09.04.2012 в 05:28
|
При моем форич и было пару строк, просто я выводил через 2 идущих подряд ехо, а можно было просто соеденить их. То, что я написал выше и задавал вопрос, это был лишь черновой вариант, мне интересно было, хорош такой способ или нет.
Сообщение # 57 написано 09.04.2012 в 05:59
|
Ваш способ - порнография. Плевок в лицо любого программиста. Насмешка над PHP
я понятно выражаюсь?
Сообщение # 58 написано 09.04.2012 в 07:25
|
Понятно. В 1.8 думаю будет более адекватный код. Спасибо!
Добавлено (09.04.2012, 13:56)
Сообщение # 59 написано 09.04.2012 в 13:56
|
| |||