Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » MySql/PHP: общие вопросы

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Открыть новую тему     Написать ответ в эту тему

Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn
всего лишь обфускация, ничего такого. сделано намеренно, чтобы усложнить понимание и восприятие.
ну и сами файлы js, css упакованы внутри этого файла. вытащить несложно.

Всего записей: 15112 | Зарегистр. 20-09-2014 | Отправлено: 10:55 20-07-2022 | Исправлено: Mavrikii, 10:57 20-07-2022
Samovarov



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
 
. Читается очень тяжело - не структурировано, строки длиннее экрана и сплошь функции, вписанные в функции


Цитата:
Вот такой пример
Подробнее...

О боже... Что это? Вы это можете читать? Вы пытаетесь это править?
 

Всего записей: 357 | Зарегистр. 20-03-2002 | Отправлено: 21:58 20-07-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Вот такой пример

просто отформатировать любым доступны средством и будет более читабельно. вот, без куска выводящего картинки/css/js коды
Подробнее...
здесь не идет речи о каком либо фреймворке. используется лишь класс PDO для работы с базой.
ну и написано на старый манер, глобальные переменные уже практически не используются.
 
ps: судя по куску, это
https://github.com/vrana/adminer/tree/v4.7.1

Всего записей: 15112 | Зарегистр. 20-09-2014 | Отправлено: 22:40 20-07-2022 | Исправлено: Mavrikii, 03:52 21-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
просто отформатировать любым доступны средством
У Вас это очень хорошо получилось. Какое средство Вы использовали?
 

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 11:37 21-07-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Какое средство Вы использовали?

да что угодно. в данной ситуации просто https://codebeautify.org/php-beautifier

Всего записей: 15112 | Зарегистр. 20-09-2014 | Отправлено: 19:27 21-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прекрасный сервис! В копилку умных ссылок.
Спасибо!

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 10:31 22-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый вечер!
 
Сделал вот такую таблицу https://ibb.co/yPb18Wd
 
Поле id здесь первичный ключ PRIMARY.  
 
Поле url предназначено для записи адресов страниц. Адреса уникальны, поиск будет происходить именно по этому столбцу. Индекс UNIQUE
 
Поле rating для записи оценок качества контента страницы, диапазон плюс - минус 125.    
 
Поле text для записи контента.
 
Всё ли здесь корректно с типами полей, их размерами, индексацией и прочим?

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 18:59 27-07-2022 | Исправлено: Vladsvn, 19:33 27-07-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Поле id здесь первичный ключ PRIMARY.  

auto_increment
 

Цитата:
Адреса уникальны, поиск будет происходить именно по этому столбцу. Индекс UNIQUE

проверку уникальности делать нужно не там.. ибо http://server?arg1&arg2 и http://server?arg2&arg1 и http://server?arg1&arg2#anchor будут одинаковыми, а вот как строчная запись - нет.
 

Цитата:
Поле rating для записи оценок качества контента страницы, диапазон плюс - минус 125.

ну, если расчитываете, что больше или меньше не будет..

Всего записей: 15112 | Зарегистр. 20-09-2014 | Отправлено: 21:40 27-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
проверку уникальности делать нужно не там..
Да, над этим надо еще подумать...
 

Цитата:
Цитата:
Поле id здесь первичный ключ PRIMARY.  
 
auto_increment
Я этого не понял, Можете пояснить Вашу мысль?
 

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 22:24 27-07-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Я этого не понял, Можете пояснить Вашу мысль?

http://www.mysql.ru/docs/man/example-AUTO_INCREMENT.html

Всего записей: 15112 | Зарегистр. 20-09-2014 | Отправлено: 22:41 27-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Что Вы имеете в виду?  
У меня поле id задано верно или неверно?

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 22:50 27-07-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn
вы ссылку прочитать не можете?
там нужен атрибут auto_increment, скорее всего. но, конечно, можете вручную задавать каждый раз id

Всего записей: 15112 | Зарегистр. 20-09-2014 | Отправлено: 22:59 27-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Конечно же, я прочитал материал по Вашей ссылке. Но auto_increment же у меня есть...  
 
Вот таблица ещё раз https://imgbb.com/yPb18Wd

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 23:19 27-07-2022
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Но auto_increment же у меня есть.

тогда извиняюсь, не заметил.
 
да, уникальность не будет проверять полную длину строки. 255 символов (768 байт)

Всего записей: 15112 | Зарегистр. 20-09-2014 | Отправлено: 23:21 27-07-2022 | Исправлено: Mavrikii, 23:41 27-07-2022
Samovarov



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn
Тоже не понял зачем полю URL уникальность. Ну и размер, наверное, избыточен. Вряд ли вы будете пихать ссылку в базу со всеми параметрами. Какая то чистка должна быть перед этим.  
 
Но, мне кажется, подход в принципе не  верный, хотя задача не очевидна
 
Обычно к ID цепляют рейтинг. Например к сущности поста или товара. URL - субстанция изменчивая .  И на одну и ту же сущность  может вести множество урлов.

Всего записей: 357 | Зарегистр. 20-03-2002 | Отправлено: 11:16 28-07-2022 | Исправлено: Samovarov, 11:18 28-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
проверку уникальности делать нужно не там.. ибо http://server?arg1&arg2 и http://server?arg2&arg1 и http://server?arg1&arg2#anchor будут одинаковыми, а вот как строчная запись - нет.
В поле URL я предполагаю писать результат $_SERVER['REDIRECT_URL']. При таком раскладе адреса уникальны, поиск будет происходить именно по этому столбцу. Оправдано применение UNIQUE ?
 

Цитата:
Ну и размер, наверное, избыточен.
Похоже, что так. 100 знаков достаточно?
 
 
 

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 14:40 30-07-2022
Samovarov



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
В поле URL я предполагаю писать результат $_SERVER['REDIRECT_URL']. При таком раскладе адреса уникальны

Не понял, почему уникальный и при чем тут вообще REDIRECT_URL? Может какие то особенности вашего движка. Не могу представить.  
 
Адреса то будут уникальны, но все они могут вести на одну и ту же страницу. Вот я о чем.
 
Например
 
http://forum.ru-board.com/topic.cgi?forum=31&topic=4472&start=1140#16
http://forum.ru-board.com/topic.cgi?forum=31&topic=4472&start=1140&bbbbbbb#16
http://forum.ru-board.com/topic.cgi?forum=31&topic=4472&start=1140&bbbbbbb&ggggggggg#16
 
Это все рабочие уникальные адреса, но все они ведут на одну страницу.
 
Т.е. нужен какой то однозначный идентификатор страницы.  
 
Это один аспект. Другой аспект модуля голосования - как вы собираетесь избежать флудинга?
 
Когда один и тот же пользователь нажмет на кнопку много раз?

Всего записей: 357 | Зарегистр. 20-03-2002 | Отправлено: 21:17 30-07-2022 | Исправлено: Samovarov, 21:20 30-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Адреса то будут уникальны, но все они могут вести на одну и ту же страницу. Вот я о чем.

Умышленно использую другую адресацию страниц, не учитывающую динамические адреса. Типа
 
http://forum.ru-board.com/topic4472.php&start=1140#16 [?]
http://forum.ru-board.com/topic4472.php&start=1140&bbbbbbb#16 [?]
 
$_SERVER['REDIRECT_URL'] даст им одинаковый уникальный адрес topic4472.php, который вполне можно заносить в таблицу.
 
Динамическую часть (там, где она потребуется), получим через [QUERY_STRING]. Писать её в таблицу нет нужды, обычно её надо сразу использовать по назначению.  
 

Цитата:
Это один аспект. Другой аспект модуля голосования - как вы собираетесь избежать флудинга? 
Когда один и тот же пользователь нажмет на кнопку много раз?

 
Поскольку голосуют только зарегистрированные, то факт голосования я заношу в отдельную таблицу, содержащую номер поста и ИД проголосовавшего посетителя. При этом никто не сможет проголосовать дважды, а автор поста лишается возможности проголосовать за свой пост.  
 
 
 

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 22:16 30-07-2022
Samovarov



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vladsvn

Цитата:
Поскольку голосуют только зарегистрированные, то факт голосования я заношу в отдельную таблицу, содержащую номер поста и ИД проголосовавшего посетителя.

Т.е. есть еще какая то таблица для голосования?
ИМХО, вы точно переусложняете.
 
Если есть ID поста и ID юзера, то достаточно
 
 
-----------------------------------------
ID | postID | userID | rating (int(1))
-----------------------------------------
и все.
 
Одним простым запросом с выборкой по postID получаете результат, как сумму оценок всех юзеров.
 
А юзеру на странице показываете что он проголосовал, потому что есть его ID и он зарегистрирован.
 

Всего записей: 357 | Зарегистр. 20-03-2002 | Отправлено: 23:04 30-07-2022 | Исправлено: Samovarov, 23:05 30-07-2022
Vladsvn

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Т.е. есть еще какая то таблица для голосования?
ИМХО, вы точно переусложняете.
 
Если есть ID поста и ID юзера, то достаточно 
 
-----------------------------------------
ID | postID | userID | rating (int(1))
-----------------------------------------
и все.  
А разве то, что Вы предлагаете, не является таблицей для голосования?
 
У меня такая таблица и есть, только без ID - это здесь не требуется.

Всего записей: 342 | Зарегистр. 07-09-2016 | Отправлено: 23:16 30-07-2022
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

Компьютерный форум Ru.Board » Интернет » Web-программирование » MySql/PHP: общие вопросы


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru