Объясните про пхп
при чем тут браузеры?
Ну а как ты пишешь сложный веб интерфейс, который работает на IE, Opera, Mozilla и каком-нибудь древнем сайте?
а причем тут пхп?
Притом, что это средство написать необходимый веб сайт. А то, что пхп там не причем, не очень хорошо.
только один из способоз достижения цели.
Я тоже не понимаю чем сложнее в PHP выдавать разный код для разных
браузеров, чем в JSP.
Мог бы найти и более веские аргументы против ПХП.
а какие у php минусы?
например?
> Я тоже не понимаю чем сложнее в PHP выдавать разный код для разных
браузеров, чем в JSP.
приведи, пример, как это будет на php.
Есть разные способы кроссбраузерности и подмена странички на сервереЗаметим, не самый удачный.
только один из способоз достижения цели.
приведи, пример, как это будет на php.Проверяем HTTP_USER_AGENT и отдаём разные страницы. Куда уж проще-то?
Но, опять же, IMHO, это самый неудачный способ делать кросс-браузерный HTML.
Не представляю как народ на пхп справляется различиями существующий браузеров.Народ справляется написанием кросс-браузерных html/js/css. А на чём написана серверная программа, которая их генерит абсолютно неважно, хоть на PHP, хоть на С++.
Читай в соседнем треде кинул про фронтпейдж боян 5-летней давности...
Хорошо, второй вопрос: я правильно понимаю, что обычно сложная функциональность на странице, например, какое-нибудь дерево с динамической подгрузкой данных (плюс поддержка старых браузеров и т.д. реализуется посредством доставания любимого фрагмента кода, и подправлением его под данную страничку?
под пхп есть куча шаблонизаторов, smarty например
пхп программист должен знать особенности всех браузеров и явно ручками отражать это в своем коде, пхп никак не помогает.Не PHP-программист, а верстальщик. Хотя довольно часть это может быть одно и то же лицо.
Я вообще не понимаю как язык должен помогать в знании особенностей браузеров? Примеры можно?
Хорошо, второй вопрос: я правильно понимаю, что обычно сложная функциональность на странице, например, какое-нибудь дерево с динамической подгрузкой данных (плюс поддержка старых браузеров и т.д. реализуется посредством доставания любимого фрагмента кода, и подправлением его под данную страничку?Да. Либо какая-нибудь библиотека функций генерирующих код (своя или чужая). А что, в других языках это не так?
Глянул smarty, по идее сильно облегчает жизнь.
Хорошо, просто интересно, кто пхп прогеров со стажем смотрел ASP.NET, т.е. конечно не для того, чтобы делать следующий проект (это я понимаю, Майкрософт, Винда -- вариант не подходит а так, чтобы посмотреть на реализацию другой идее. Интересно, что таки люди скажут.
А какая идея в ASP.NET-то?
а ты смотрел?
Нет. Где ж я его возьму-то?
Идея, на мой взгляд такая: как в случае с использованием шаблонизаторов, добавляется еще одна фаза генерирования страницы, только в случае асп+ на этой фазе достигается гораздо большая абстракция. При этом внимание программиста смешается именно в эту фазу, где он оперирует в терминах взаимодействия контролов, как самостоятельных компонентов, которые инкапсулируют логику и представление, взаимодействуют друг с другом, страницей, ответом и запросом, внешними источниками данных.
Ну взять посмотреть ИМХО не проблема. Можно книжку Фрица Ониона почитать, там ничего лишнего, голая архитектура без мишуры -- за пару часиков осилить можно.
smarty напримерКак всегда, еще нашлись пидорасы, написавшие собвстенный шаблонизатор. Добавили работу верстальщикам, молодцы.
Нет, чтобы заюзать формат типа perlового HTML::Template... Всем было бы проще...
Кстати, для пхп есть шаблонизатор такой...
а какой шаблонизатор вкомпили в 5ый пхп?
этот вроде что Скиф назвал внешний, типа PEAR
> Но, опять же, IMHO, это самый неудачный способ делать кросс-браузерный HTML.
Если это не удачный пример, то зачем ты его привел?
Каким ты видешь хороший пример создания кросс-браузерного html-я?
Правильнее сказать, что отдавать разным браузерам разный HTML -- это не самый удачный способ делать кросс-браузерные странички/сайты.
HTML сам по себе достаточно кросс-браузерен, проблемы начинаются c css и js.
ок, переформулирую вопрос.
Как на php отдавать для разных браузеров разный код страниц, так чтобы можно было легко совместить работу трех человек:
дизайнера (человек, который определяет что и в каких местах на странице)
программиста (человек, который определяет, какие конкретно данные в каждый отдельный запрос выводятся на страницу)
верстальщика (человек, который определяет тонкости вывода под каждый браузер/платформу)
?
> HTML сам по себе достаточно кросс-браузерен, проблемы начинаются c css и js.
даже данный форум - например, отдает разный html, когда узнает браузер, и когда не узнает.
kinfo.ru - говорит что я под ие, но я под оперой и никак ты не распознаешь.
> HTML сам по себе достаточно кросс-браузерен, проблемы начинаются c css и js.
даже данный форум - например, отдает разный html, когда узнает браузер, и когда не узнает.
Есть стандарт html. А дальше о кроссбраузерности стоит вопрос о браузере , как он интерпретирует вернувшийся хтмл, и от языка программирования тут ни хрена не зависит
А пример с Оперой ничего не меняет. Понятно, что сначала никто Оперу не знал, и поэтому имело смысл прикидываться ИЕ. Сейчас у меня 8ая версия, и она изначально идентифицирует Оперой.
PS.
Кто-нить натравите валидатор W3C на любую страницу сверстанную http://www.design.ru/
ходили слухи что за ошибки увольнение
Ок, черт с ней, с этой кроссбраузерностью. Хотя, когда сайт криво показывает Опера (браузер, которым я хожу по инету я стараюсь найти ему альтернативу.
при этом, в результате, страница отображается сильно по разному
пример! в студию
поддерживать frame-ы или не поддерживать
поддерживать скрипты или не поддерживать
поддерживать css или не поддерживать
и т.д.
kinfo.ru - говорит что я под ие, но я под оперой и никак ты не распознаешь.После этого не стоит удивляться, что у тебя плохо выглядит страница. Как говорится, взялся за гуж, не говори, что не дюж.
опера w3c держит замечательно. так что не надо.
Простой пример: мы хотим сделать страницу в стиле модного нынче веяния AJAX, т.е. не перегружая страницы.
Для реализации «динамической подгрузки» используют следующие средства:Поэтому, если твоя Opera, честно раскрыв глаза и набравшись смелости, громко и уверенно заявит: "Я - IE!", и при этом сервер честно полагается на это заявление, ты обнаружишь, что ничего не работает. А теперь вопрос - кто в этом виноват, кроме тебя самого?
В Internet Explorer: ActiveX-компонента с именем Msxml2.XMLHTTP или Microsoft.XMLHTTP.
В Mozilla и FireFox: встроенный класс XMLHttpRequest.
В Opera: динамически создаваемый <IFRAME> нулевого размера (скрытый).
дай код проверю
а вообще опера себя предлагает так: что мол я интерпретирую хтмл как ие по в3ц, а дальше меня не и... то есть не волнует
Оставить комментарий
bastii
Навеяно соседним тредом.Почему пхп все еще так популярен в народе, ведь очевидно пхп слабо абстрагирует от "куча write". Или я может отстал от жизни и пхп пошел дальше. Странно, что мешает развивать его дальше (JSP, ASP.NET, еще дальше). Не представляю как народ на пхп справляется различиями существующий браузеров.