С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
21 / 20 / 3
Регистрация: 21.06.2010
Сообщений: 80

Пара вопросов от начинающего

12.01.2012, 18:18. Показов 1144. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.

Друзья, изучаю PHP по книге Дэвиса&Филлипса от 2008 года. Возникло несколько вопросов. Хотел бы уточнить у людей, которые имеют практический опыт работы с PHP.

Во-первых, авторы везде используют такой тэг как:
PHP
1
<br />
Т.е. допустим:
PHP
1
echo("Hello!<br />");
Я не очень понимаю - почему? Ведь тэг переноса строки вообще без каких-либо косых черт должен быть. Так она ещё и сзади стоит. Самое интересное, что в браузерах это всё нормально отображается. Непонятно.

Во-вторых.
Рассказывается про взаимодействие PHP с БД (MySQL). Говорят - для обращения используется стандартная функция mysql_connect. Далее идёт пример работы с БД через стандартные функции работы с MySQL.
Потом говорят, что на самом деле всё это фигня, что стандартные функции прошлый век, и надо использовать функции из модуля PEAR DB. И примерчик работы с БД через PEAR DB.
Наконец, PEAR DB также оказывается днём вчерашним, а сегодня мол все только MDB2 и пользуются.

Собственно, вопрос: а чем люди реально то пользуются?
То есть это круто, конечно, что PEAR DB делает разработку PHP-кода более гибкой (я так понял).
Но это мало тогда на сервере PHP иметь, это надо там модуль PEAR установить. А к нему ещё и DB прилепить. А если MDB2 ставить, так там ещё дополнительно для установки библиотеки работы с определёнными БД возникают на горизонте (MDB2_Driver_mysql).

PEAR это реально "золотой стандарт" или, если работа кроме как с MySQL не планируется, смысла под это загоняться нет?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.01.2012, 18:18
Ответы с готовыми решениями:

Несколько вопросов от начинающего
1. какое свойство объектов отвечает за 'доступ'? 2. Можно ли в запросе в графе 'условие отбора' ссылться на значения полей формы,...

Несколько простых вопросов от начинающего
Здравствуйте! Мне интересны следующие вопросы: 1. Где лучше объявить переменные нужные на протяжении всей работы программы? Например...

Несколько вопросов начинающего на Lotus+java
Добрый день. Вводные: Клиент 6.5.3 1. При замене суперкласса своей программы с AgentBase на DebugAgentBase на яваконсоли...

8
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
12.01.2012, 18:41
Цитата Сообщение от TrenAr Посмотреть сообщение
Я не очень понимаю - почему? Ведь тэг переноса строки вообще без каких-либо косых черт должен быть.
http://ru.wikipedia.org/wiki/Xhtml

Цитата Сообщение от TrenAr Посмотреть сообщение
Потом говорят, что на самом деле всё это фигня, что стандартные функции прошлый век, и надо использовать функции из модуля PEAR
Прямо вот так нагло навязывают своё мнение?

Тут проблема не в том, что круче, а в том, что есть что вообще. Стандартная функция mysql_connect и т.п. - это расширение PHP (модуль) mysql. Расширение mysql действительно старое, есть в нем минусы. Но для основных примитивных операций сойдет. Есть и другие расширения: mysqli, PDO например. Последнее позволяет работать не только с MySQL'ем.

А вот PEAR - это уже библиотека. Это PHP код (написанный другими людьми), который точно так же использует те же модули. Если Вам будет удобно использовать PEAR, если Вы не хотите изобретать велосипед - Ваш выбор.
2
21 / 20 / 3
Регистрация: 21.06.2010
Сообщений: 80
12.01.2012, 18:48  [ТС]
А, понятно, спасибо большое за ответ.
0
45 / 45 / 12
Регистрация: 04.01.2010
Сообщений: 223
14.01.2012, 02:45
лично я пользуюсь стандартными функциями mysql, подключено расширение mysqli. никакие PEAR, MDB2, никогда не использовал так как не вижу потребности использовать что-то кроме стандартного. в огромном множестве чужих скриптов, которые мне приходилось дорабатывать я ни с чем подобным ни разу не сталкивался.
насчёт xhtml - никогда не использовал, не планирую использовать и другим советовать не буду, но это чисто моё субъективное мнение. если интересно, можешь почитать в интернете по запросу 'html или xhtml' на эту тему много всего написано.
1
21 / 20 / 3
Регистрация: 21.06.2010
Сообщений: 80
15.01.2012, 03:43  [ТС]
Цитата Сообщение от ПАЦАН Посмотреть сообщение
...
Спасибо. Мне сейчас тоже импонирует использование стандартных средств разработки (потому что есть подозрение, что будут проблемы с установкой на сервере дополнительных компонентов PHP).


Друзья, а ещё вопрос.
Допустим я хочу написать "движок" сайта. Вот в книжке опять начинают уводить в какие-то дебри и предлагают установить ещё и некий "компилирующий обработчик шаблонов Smarty".
А всё что я сейчас хочу от движка, чтобы он рисовал таблицу из двух строк, в одной (верхней) будет меню сайта, во второй (нижней) будет текст (в зависимости от выбранной страницы).
Я же правильно понимаю, что по сути кроме связки PHP+MySQL ничего не надо? Имена разделов вместе с текстом внутри можно, например, хранить в одной табличке из двух колонок в базе. А юзер будет переходить на страницы путём передачи одного параметра в php файл-шаблон (имени нужной страницы).
Я написать ещё не пробовал, но мыслю же верно?
Или в MySQL обычно не хранят десятки килобайт текста, создавая для этих целей в отдельной папке обычные .txt файлы?


Да, и ещё несколько вопросов

В книге постоянно по разному реализуется обработка отправленных пользователем данных. Чередуются два варианта использования $_GET():
PHP
1
2
3
4
...
if ( $_GET["value"] != NULL ) {
  $int = htmlentities( $_GET["value"] );
...
Я уже запутался с ними - как правильно то? Я верно понимаю, что первый это тупо упрощённая форма второго и корректно как раз писать через htmlentities?

И ещё. В книжке писали, что к элементам массива надо обращаться через фигурные скобки { }.
Однако, при обработке тех же данных из MySQL они используют квадратные скобки о_О
Например:
PHP
1
2
3
4
...
      while ($result_row = mysql_fetch_row($result)) {
        echo("Название: " . $result_row[1]);
...
$result_row это же массив, да? И почему тогда не через { } ?
0
Веб-мастер
 Аватар для Maksimchikfull
89 / 89 / 19
Регистрация: 11.08.2011
Сообщений: 674
15.01.2012, 04:58
Цитата Сообщение от TrenAr Посмотреть сообщение
Я уже запутался с ними - как правильно то? Я верно понимаю, что первый это тупо упрощённая форма второго и корректно как раз писать через htmlentities?
htmlentities первращает и русские символы в html сущности. Я щитаю что лутше htmlspecialchars

Добавлено через 1 минуту
Цитата Сообщение от TrenAr Посмотреть сообщение
$result_row это же массив, да? И почему тогда не через { } ?
Мне тоже интересно. Но помоемому фигурные скобки вообще не используются таким образом, оно выведет что то типо Array{...}. Я проверю.

Добавлено через 1 минуту
Цитата Сообщение от TrenAr Посмотреть сообщение
И ещё. В книжке писали, что...
Я щитаю что нельзя учится от одного источника. Иначе в будущем просто будете под шаблоны других людей косить. А это плоховато. Расширяйте возможности. Ищите информацию в интернете. Спрашивайте нас, тут. Мы всегда поможем чем сможем. Я уже на своём опыте проверил.
0
21 / 20 / 3
Регистрация: 21.06.2010
Сообщений: 80
15.01.2012, 20:58  [ТС]
Цитата Сообщение от Maksimchikfull Посмотреть сообщение
htmlentities первращает и русские символы в html сущности. Я щитаю что лутше htmlspecialchars.
Ага, спасибо.
0
45 / 45 / 12
Регистрация: 04.01.2010
Сообщений: 223
18.01.2012, 00:37
Допустим я хочу написать "движок" сайта. Вот в книжке опять начинают уводить в какие-то дебри и предлагают установить ещё и некий "компилирующий обработчик шаблонов Smarty". Я же правильно понимаю, что по сути кроме связки PHP+MySQL ничего не надо?
Любой движок, и простой, и сложный можно написать без smarty. я никогда ничего подобного не использовал. по крайней мере, любой разработчик должен знать и понимать, как это делается без smarty. конечно, по возможности нужно отделять логику от представления, но это можно делать используя php в качестве шаблонизатора без взяких smarty и другого подобного мусора в коде. так что настраивай php+mysql и вперёд!

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

$result_row это же массив, да?
да, это массив, и обращаться к нему нужно как и к любому другому массиву. в примерё всё правильно
1
21 / 20 / 3
Регистрация: 21.06.2010
Сообщений: 80
18.01.2012, 01:53  [ТС]
Спасибо всем.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.01.2012, 01:53
Помогаю со студенческими работами здесь

Пара вопросов
Добрий вечер форум! У меня пара вопросов: 1. Как сделать так чтоби форма ушла под другими окнами? 2. Как заставит форму изчезнуть из...

пара вопросов
прочитал что яндекс индиксирует только 100кб страницы, больше не осилит, но у меня только лого 60кб и есчо пара картинок, или это только на...

Пара вопросов по С++
возникло несколько вопросов, с которыми что то не могу никак разобраться 1. Как происходит выравнивание при создании структуры? ...

Пара вопросов
1. Присутствует значительный объём кода в General Declarations перед объявлением переменных (всякие там библиотеки и т.д.), который должен...

пара вопросов
1 Как из модуля mdb выбрать данные из таблицы содержащейся в этой же БД? До этого работал с access только, как с внешним ИД, используя ADO,...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru