Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
-13 / 2 / 0
Регистрация: 14.08.2014
Сообщений: 240

Правила оформления длинных запросов

12.02.2016, 18:38. Показов 3047. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет. При создании записей в БД часто получаются длинные запросы вида
PHP
1
$db->query("INSERT INTO `pages` (title,text,html,noindex,date,author)VALUES ('".mysqli_real_escape_string($db, $static_page_title)."','".mysqli_real_escape_string($db, $static_page_text)."','".mysqli_real_escape_string($db, $onlyhtml)."','".mysqli_real_escape_string($db, $noindex)."','".time()."','".$uid."')");
Как правильно оформлять такой код? Есть ли какой-то стандарт?
В мыслях только переносить новые значения на новую строку вроде
PHP
1
2
3
4
5
6
7
8
$db->query("INSERT INTO `pages` (title,text,html,noindex,date,author)VALUES
(
'".mysqli_real_escape_string($db, $static_page_title)."',
'".mysqli_real_escape_string($db, $static_page_text)."',
'".mysqli_real_escape_string($db, $onlyhtml)."',
'".mysqli_real_escape_string($db, $noindex)."',
'".time()."','".$uid."'
)");
Тогда впринципе очень удобно становится читать и вносить правки и вообще мне кажется что с точки зрения семантики это делает код более логичным и предсказуемым.

Но порывшись в рамблере конечно же ничего не нашёл на этот счёт(иначе я не создал бы этот пост).

Так вот, я был бы благодарен за информацию по правильному оформлению кода в таких случаях.
В идеале конечно же назвать стандарт оформления и подкрепить ссылкой.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.02.2016, 18:38
Ответы с готовыми решениями:

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

Правила оформления кода
Здравствуйте. Что то порылся в поиске и не нашел. Подскажите статьи, литературу, где грамотные советы даются о том как правильно оформить...

Правила оформления комментариев
Скажите,пожалуйста,считается ли плохим тоном писать комментарии так: /*Создать объект класса Текстовый файл, используя классы Файл,...

16
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
12.02.2016, 18:45
Цитата Сообщение от AlexBitard Посмотреть сообщение
Так вот, я был бы благодарен за информацию по правильному оформлению кода в таких случаях.
http://php.net/manual/ru/mysqli.prepare.php
0
5 / 6 / 3
Регистрация: 02.02.2014
Сообщений: 171
12.02.2016, 18:49
Есть одно небольшое правило насчет ковычек.Двойные кавыки обрабатываются дольше чем одинарные.Я стараюсь где есть возможность использовать одинарные.Когда сервер читает скрипт в двойных кавычках,он сперва ищет разные спецсимолы.
0
-13 / 2 / 0
Регистрация: 14.08.2014
Сообщений: 240
12.02.2016, 19:01  [ТС]
Jewbacabra, Совсем не то о чём я спрашивал, перечитайте топик.
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
12.02.2016, 19:06
Такой код не надо оформлять, надо переделывать... один раз заполняете массив названиями полей, затем в цикле подставляете в запрос названия полей и значения.
0
-13 / 2 / 0
Регистрация: 14.08.2014
Сообщений: 240
13.02.2016, 13:23  [ТС]
Jodah, Было бы не плохо если бы вы почитали о низкоуровневых составлениях запросов и о том для чего вообще существуют запросы такого вида.

Ну а я всё ещё жду адекватных ответов. Ваши высказывания мне мало интересны, а вот за информацию по правильному оформлению кода буду благодарен.
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
13.02.2016, 14:32
Цитата Сообщение от AlexBitard Посмотреть сообщение
Было бы не плохо если бы вы почитали о низкоуровневых составлениях запросов и о том для чего вообще существуют запросы такого вида.
Какие-то понты в никуда... составлять запросы вручную есть смысл, когда они слишком сложны, чтобы пытаться их структурировать. Например, когда в запросе несколько таблиц или внутри есть подзапросы. А у вас запрос совсем обычного вида, перечисление полей и значений, проще некуда.

Цитата Сообщение от AlexBitard Посмотреть сообщение
Ну а я всё ещё жду адекватных ответов.
Так перестаньте искать в рамблере перечитайте тему, вам уже 2 варианта показали, как можно адекватно оформить код. Если так хочется городить простыню из простейшего SQL-запроса - пожалуйста, только не надо жаловаться, что у участников форума нет желания помогать вам в составлении кривых решений.
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
13.02.2016, 14:43
Лучший ответ Сообщение было отмечено AlexBitard как решение

Решение

Цитата Сообщение от AlexBitard Посмотреть сообщение
всё ещё жду адекватных ответов
Знать бы еще, что вы подразумеваете под "адекватным ответом"... Ну, может это короткое обсуждение, в котором так же упоминается о том, что как таковых стандартов нет, внесет какую-то долю адекватности.
Цитата Сообщение от AlexBitard Посмотреть сообщение
с точки зрения семантики это делает код более логичным и предсказуемым
О какой логике мы говорим? И в чем предсказуемость? Ваша предсказуемость, как программиста или предсказуемость результата, полученного в ходе запроса? На мой личный взгляд, то Jewbacabra предложил вам вполне адекватный вариант. Вместо того, чтобы писать гирлянды с использованием mysqli_real_escape_string, лучше использовать подготовленные запросы. А если работать с PDO, где есть возможность использовать именованные плейсхолдеры, то строка запроса становится самой "логичной и предсказуемой" ( это ж надо было такие термины сюда прикрутить? )
1
-13 / 2 / 0
Регистрация: 14.08.2014
Сообщений: 240
13.02.2016, 16:08  [ТС]
Цитата Сообщение от Lazy_Den Посмотреть сообщение
может это короткое обсуждение, в котором так же упоминается о том, что как таковых стандартов нет, внесет какую-то долю адекватности
Да. Именно такого ответа я и ждал и не хотел увидеть. А жаль.
Но это то что нужно. Я просто хотел понять есть ли правила оформления длинных запросов.
Теперь я знаю что правил нет. А жаль. Прийдётся договариваться о правилах лично с каждым человеком работающим с кодом такого вида.

Цитата Сообщение от Lazy_Den Посмотреть сообщение
О какой логике мы говорим?
Я же написал что это суждение с точки зрения семантики.
Если кто-то тут на столько мерзкий быдлан (я не о вас, приятель, вы мне наобарот приятны на этом форуме) что думает что мои слова это
Цитата Сообщение от Jodah Посмотреть сообщение
Какие-то понты в никуда...
, и привык быдло сленгу на столько что даже гуглить разучился, я объясню проще.

Если вы видите знак ; то Вы с уверенностью можете сказать что это конец строки.
Разве нет (конечно если он не закомментирован или не в кавычках и т.д.)?
PHP
1
2
3
4
5
6
7
echo
 
'Чего-то я тут'.
 
'пишу. Длинное и многострочное'
 
;
И посмотрев на точку с запятой вы знаете что строка закончена.

Или например если вы видите ?> при определённых условиях (не в скобках, не закомментированным...) то Вы понимаете что это конец php сценария.

Всё это Вы поймёте даже в текстовом файле без подсветки синтаксиса.
Потому что код следует определённым правилам и стандартам.
И чем больше Вы знаете о правилах оформления кода и чем лучше их соблюдаю Я, тем легче вам будет разобраться в моём, неизвестном вам коде. Чем более предсказуемо выглядит мой код, тем проще другому человеку его читать и разбираться в нём. Мои примеры достаточно скудные, но суть я передал.

А вам
Цитата Сообщение от Jodah Посмотреть сообщение
составлять запросы вручную есть смысл, когда они слишком сложны, чтобы пытаться их структурировать. Например, когда в запросе несколько таблиц или внутри есть подзапросы. А у вас запрос совсем обычного вида, перечисление полей и значений, проще некуда.

Если так хочется городить простыню из простейшего SQL-запроса - пожалуйста, только не надо жаловаться, что у участников форума нет желания помогать вам в составлении кривых решений.
Я бы хотел напомнить о том, что помогать или не помогать - ваш личный выбор.
Если вы считаете меня выскочкой и дураком, можете не отвечать в этой теме вообще.
Вы только с толку сбиваете. Вместо того что бы писать очевидные вещи, лучше бы дали ответ на заданный мной вопрос. Тот же Lazy_Den хоть и посмеялся надо мной, но тут же привёл ссылку которая меня удовлетворила, за что говорю ему спасибо.

А этот пример из топика на то и пример, что бы передать смысл длинного запроса.
На сколько мои запросы сложные, не важно в этом случае. Важно то, что я спросил как оформлять длинные запросы, а Jewbacabra и вы рассказываете мне о подготовленных запросах.

Ну зачем вот мне это знать если я спросил совсем о другом? Или что же, я на столько внушаю вам вид дурочка, что вы думаете я не знаю о подготовленных запросах?

Вам бы понравилось если бы вы пришли в магазин с чёткой целью, за какао-бобами, а вам бы начали предлагать купить шоколад лишь потому, что вам незачем возиться с бобами когда есть готовый продукт и он вкусный и полезный?
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
13.02.2016, 16:50
Цитата Сообщение от AlexBitard Посмотреть сообщение
Вместо того что бы писать очевидные вещи
Исходя из вашего нежелания эти вещи принимать и использовать, я сделал логичное предположение, что для вас они не очевидны.
Цитата Сообщение от AlexBitard Посмотреть сообщение
А этот пример из топика на то и пример, что бы передать смысл длинного запроса.
А причём здесь длина запроса? Вопрос в его сложности (а вернее, сложности его передачи в конструктор запросов), а сколько в нём символов, 100 или 1000 - не имеет значения, если он имеет простую структуру, как в вашем случае.

Цитата Сообщение от AlexBitard Посмотреть сообщение
Вам бы понравилось если бы вы пришли в магазин с чёткой целью
Во-первых, мы не в магазине, и увы, я вам ничего не должен, поэтому предоставляю ту информацию, которую считаю нужной.
Во-вторых, зачастую пользователь не может правильно сформулировать вопрос, либо его вопрос исходит из неправильно поставленной задачи, поэтому вполне логично желание участников форума копнуть глубже.

И весьма странно, что вы не смогли нарамблерить информацию по форматированию SQL-запросов...
0
-13 / 2 / 0
Регистрация: 14.08.2014
Сообщений: 240
13.02.2016, 17:38  [ТС]
Jodah, Да у вас ярко выраженная деменция. Я не шучу. Прочитайте топик и свои ответы.
Вы придумали себе тему и отвечаете на неё.
В моём вопросе было буквально "есть ли правила оформления длинных запросов?"
А вы мне пытаетесь рассказать о том, что "Вопрос в его сложности (а вернее, сложности его передачи в конструктор запросов), а сколько в нём символов, 100 или 1000 - не имеет значения, если он имеет простую структуру, как в вашем случае."

Вы хотя бы понимаете что я у вас не спрашивал об этом?

Не важно какой сложности запрос. Представьте что это что-то вроде
SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT
    t.field,
    t.field1,
    ...
FROM
    TABLE t INNER JOIN
    table1 t1 ON t1.id = t.id INNER JOIN
    table2 t2 ON t2.id=t1.id
WHERE 
    t.value = 'foo' AND
    t1.value = 'bar'
GROUP BY t.field
ORDER BY t.field
Это не имеет значения. Проблема в том, что он слишком длинный для одной строки.
Вы, приятель, прямо типичный солдат холивара.
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
13.02.2016, 18:24
Цитата Сообщение от AlexBitard, Посмотреть сообщение
Да у вас ярко выраженная деменция. Я не шучу.
Я вижу, вам очень нравится вести себя как высокомерный хам, но увы, здесь это никто не оценит. Здесь люди делом занимаются.

Цитата Сообщение от AlexBitard Посмотреть сообщение
В моём вопросе было буквально "есть ли правила оформления длинных запросов?"
Вот ваш вопрос:
Цитата Сообщение от AlexBitard Посмотреть сообщение
часто получаются длинные запросы вида
Цитата Сообщение от AlexBitard Посмотреть сообщение
Как правильно оформлять такой код? Есть ли какой-то стандарт?
Вы показали конкретный код. И спросили, как его оформлять. Вам ответили - использовать плейсхолдеры или перебирать в массиве. Можно ли это назвать оформлением? Вполне. Стандартами? Тоже, поскольку так делает большинство. Так что вы получили конкретные ответы на конкретный вопрос.

В итоге, вопрос вы сформулировали неправильно (даже слово "форматирование" не написали, хотя вам нужно было именно оно), пример показали не подходящий, в итоге получили не то, что хотели. А виноват, конечно, я.

Цитата Сообщение от AlexBitard Посмотреть сообщение
Вы хотя бы понимаете что я у вас не спрашивал об этом?
Надеюсь, теперь вы хотя бы понимаете, что спрашивали вы именно об этом?
0
-13 / 2 / 0
Регистрация: 14.08.2014
Сообщений: 240
13.02.2016, 18:39  [ТС]
Цитата Сообщение от Jodah Посмотреть сообщение
Можно ли это назвать оформлением?
Конечно же нельзя. Вы что, не способны отличить оформление от реализации исполнения?
Может вы ещё авторизацию с аутентификацией путаете? Гуглите термины.
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
13.02.2016, 18:44
AlexBitard, если смотреть в терминологию - да, понятия разные, но мы на форуме для начинающих, здесь люди сервер с клиентом путают, поэтому слова "оформление" и "стандарт" могут означать что угодно.

В общем, не вижу смысла продолжать этот спор. Удачи вам в оформлении кода.
0
-13 / 2 / 0
Регистрация: 14.08.2014
Сообщений: 240
13.02.2016, 19:11  [ТС]
Jodah, Спасибо. А вам советую поискать в гуглах "Стандарт оформления PHP кода"
0
 Аватар для maruo
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
14.02.2016, 12:44
AlexBitard, НЕТ ,общих стандартов оформления нет.Пишите хоть в 1 строку все или каждое слово с новой. Однако у каждой компании есть свой стандарт.
PS;А у вас завышенная самооценка, и неуважение к людям которые вам помогают
1
-13 / 2 / 0
Регистрация: 14.08.2014
Сообщений: 240
14.02.2016, 16:52  [ТС]
maruo, Если бы сразу кто нибудь дал такой ответ, я был бы рад.
Но всё же ещё раз спасибо Lazy_Den'у и вам.

p.s. просто меня изначально не так поняли пара человек, но в итоге мы нашли ответ.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.02.2016, 16:52
Помогаю со студенческими работами здесь

Правила оформления кода
Почему рекомендует писать классы и функции следующим образом?(вроде как добавляет лишнюю строку, а удобочитаемости..) class SomeClass :...

Правила оформления кода c++
Приветствую! В общем не редкость встречается, вот такие оформления class SomeClass { private: int _length; ...

Правила оформления программы
Ребята, поделитесь своими фишками\секретами\правилами и т.п. и т.д. при создании проектов. Как вы делаете свою программу более...

Правила оформления схем алгоритмов
...

Правила стилевого оформления документов MS Word
Вот задали самостоятельную работу не пойму ЧТО ОТ МЕНЯ ТРЕБУЕТСЯ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru