Консультация № 160030
09.02.2009, 18:38
0.00 руб.
0 21 3
Здравствуйте эксперты, приведите мне пожалуйста пример php страницы, как на php писать страницы.
Я хочу написать сайт на php, мне одни говорят, что все на странице пишется с помощью php, другие говорят, что все пишется на html, в страницу вставляются скрипты и страница сохраняется с расширением php, этот способ у меня работал.
Но страница, написанная на php, не выдаст своего исходного кода по понятной причине.
А у меня получается, что весь код виден, т.к. он на html написан, не видно только кода на php.
Вот я хочу писать страницы на чистом php, возможно ли это?
Вот например (в приложении), когда я пытаюсь выполнить этот "скрипт", сервер пишет, что ошибка во второй строке, когда я убираю теги </php, оставляю один html код, все работает, но это html.

Приложение:
<?php
<html>
<table align=center border=3 bordercolor=green>
<tr>
<td>1   </td>
<td>3   </td>
</tr>
<tr>
<td>2   </td>
<td>4   </td>
</tr>
</table>
</html>
?>

Обсуждение

Неизвестный
09.02.2009, 19:37
общий
это ответ
Здравствуйте, Исаак Моисеевич!
Во-первых, если Вы хотите вывести HTML код при помощи PHP, то делать надо как указано в приложении.
Но если Вы этим хотите скрыть Ваш HTML код от посторонних глаз, то это у Вас при помощи PHP, к сожалению, не получится.


Приложение:
<?php
echo '<html><body>
<table align=center border=3 bordercolor=green>
<tr><td>1</td><td>3</td></tr>
<tr><td>2</td><td>4</td></tr>
</table></body></html>';
?>
Неизвестный
09.02.2009, 19:52
общий
это ответ
Здравствуйте, Исаак Моисеевич!
Среди способов страницеписания я для себя особо выделяю способ с использованием шаблонизатора, Smarty. Без преувеличения, один из лучших способов разделить PHP и HTML, которые, безусловно, НАДО РАЗДЕЛЯТЬ.

То, что написано у Вас, не работает по вполне понятной причине, - потому что работать там нечему. Между тегами <?php и ?> должен находиться код PHP - функции, операторы, переменные - а не код HTML. Когда Вы убираете PHP-теги, все начинает НЕ работать, а ОТОБРАЖАТЬСЯ.
То, что "программа" ругается на ошибку во второй строке, - тоже понятно. Интерпретатор-то ожидал увидеть вовсе не HTML-код, а какую-нибудь функцию или оператор.

Писать страницы ТОЛЬКО на PHP нельзя - без HTML все равно не обойтись. Поэтому использование HTML максимально ограничивают путем использования шаблонов. Создают страницу-шаблон, в ней на специальном языке Smarty(да-да, без преувеличения, Smarty - это целый маленький язык!) пишут всякую всячину. Например, в таком-то месте вставить значение переменной, в этом месте вставить какой-либо файл для отображения, а здесь - отобразить результат работы какой-либо функции...
Но это мы пока еще PHP не использовали. А без него в данном случае никак. Программа-обработчик шаблона подставляет в HTML-код шаблона все необходимые элементы - значения переменных, выполняет функции и т. д.

Обо всем этом Вы можете узнать на сайте smarty.net. К Smarty прилагается русифицированный мануал, написан достаточно понятно и подробно.
С уважением, Товарищ Бородин
давно
Практикант
137657
274
09.02.2009, 20:11
общий
Товарищи, ну я так понял, что все таки надо в файле .php среди html тегов вставлять php скрипты? (вроде гостевых книг, голосований, счетчиков)
Правильно я понял?
А то не хочется мне еще один язык учить, я php то только начинаю учить.
Неизвестный
09.02.2009, 20:37
общий
Нехороший это путь - вставлять PHP-скрипты в HTML-код. Не хотите учиться - никто и не заставляет. Странно только, Вы хотели, наверное, все узнать, не особо напрягаясь? Ну удачи!
давно
Практикант
137657
274
10.02.2009, 06:57
общий
Товарищ Бородин, я учу php, и мне надо знать, как писать страницы с помощью php, а тут я узнаю, что надо еще один язык для этого учить.
Без Smart не обойтись?
Неизвестный
10.02.2009, 08:45
общий
Ну Smarty учится очень легко, потому что синтаксис у него похож на PHP-шный. Как язык программирования Smarty несамостоятелен. Без PHP не сработает. Вы бы лучше попытались что-нибудь умное почитать про эту тему, чем препираться. Вы ведь ни секунды не поинтересовались даже тем, что я посоветовался, а уже пытаетесь без чего-то обходиться.
Советую писать страницы на HTML(в программе FrontPage, чтобы проще было ), потому что PHP с таким подходом Вы будете осваивать очень долго.
давно
Практикант
137657
274
10.02.2009, 08:51
общий
На HTML я и в блокноте пишу
И как вы посоветуете осваивать php? Smarty все-таки придется мне учить?
Неизвестный
10.02.2009, 09:00
общий
Учите синтаксис. Учите ООП и вообще, учитесь программировать с помощью классов и объектов. Что толку сразу писать страницы, если Вы этого еще делать не умеете? И вообще, очень советую разориться на какую-нибудь хорошую книжку по PHP и почитать, как следует...
давно
Практикант
137657
274
10.02.2009, 09:08
общий
Хорошо, какую книжку посоветуете?
В электронном виде подойдут?
У меня есть Котеров, Костарев, PHP5, наиболее полное руководство, A.Kuharchik_PHP_Obuchenie-na-primerah (ничего хорошего в ней нет), Ларри Ульман Основы программирования на РНР Самоучитель и еще всякие.
Лучше в бумажном купить варианте?
Неизвестный
10.02.2009, 09:18
общий
Ну вот, все что нужно есть(хотя я лично предпочитаю бумажные варианты Котеровской книжки, а вообще у меня дома уже внушительная библиотека собрана... И продолжает пополняться, несмотря на то, что я из книжек по PHP уже начинаю вырастать)!!! А чего Вы до сих пор PHP-то не знаете? Я Вас тут уже черт знает сколько наблюдаю, у Вас очень много вопросов по PHP и смежным темам... Пора от вопросов переходить к ответам уже.
Неизвестный
10.02.2009, 10:06
общий
это ответ
Здравствуйте, Исаак Моисеевич!
Почитал ваш минифорум к вопросу о пхп - удивился ))
1) смарти - удобно и правильно, но это уже для профиков, а для обучения его пока можно попустить.
2) смысл ответа на ваш вопрос сводится к тому, что нужно себе в голове чётко уяснить: пхп - это программа, которая выполняется на сервере, [получает данные на входе и ] выводит результат своей работы. Хтмл - это формат вывода информации, который понимается браузером и преобразуется в страницу уже в браузере пользователя.

Отсюда вывод: если вы хотите получить страницу в хтмл, сформированную скриптом пхп, вы должны написать код, ВЫВОДЯЩИЙ хтмл - например, при помощи echo - это будет наиболее верный в нашем случае вариант.

Тот "нехороший путь" тоже будет работать - надо только понимать, что сервер будет выполнять как скрипт всё, что находится между пхп-скобками <? и ?> и просто выводить всё остальное (то есть в том числе фрагменты хтмл, которые вы захотите выводить статично).

Резюмирую: между пхп-скобками <? и ?> должны находиться ТОЛЬКО команды пхп, которые могут быть выполнены сервером. Всё, что создаётся при помощи пхп, должно быть выведено с помощью пхп-функций вывода, таких, как echo. Всё, что находится за пределами <? и ?> просто выводится в браузер пользователя без какой-либоо обработки сервером. Естесственно, что сервер должен "уметь" интерпретировать пхп - иначе всё выведется в браузер как есть, без выполнения скрипта.
Неизвестный
10.02.2009, 10:28
общий
Да ничего там такого сложного в Smarty нет, чтобы его записывать в "для профиков". Мануал там очень подробный, тем более, имея на руках книжку "PHP5. Наиболее полное руководство", где про Smarty есть целая глава, изучить принцип работы Smarty не составит особого труда.
Неизвестный
10.02.2009, 13:14
общий
Smarty - может это и удобно, но я пока без него обходился. Хотя пишу, иногда, и очень сложные проекты.
И такой еще пример: подключался к базе данных функциями, которые вычитал в книге по PHP 4, но когда изучая какой-то код, где подключение было реализовано классом, перешел на этот класс. Мне было удобнее.
Так же и Вы. Пробуйте выполнять примеры из книги, поймите суть PHP и HTML.
давно
Практикант
137657
274
10.02.2009, 13:53
общий
Товарищ Бородин, я ведь не только php учу, я еще учу photoshop, corel draw, flash, и еще много чего, вот так скачу от одного к одному и не знаю за что взяться сначалане успеваю ничего вообще выучить
Буду тогда Php больше учить.
Неизвестный
10.02.2009, 19:03
общий
Smarty - может это и удобно, но я пока без него обходился. Хотя пишу, иногда, и очень сложные проекты.

И как проекты, можете адреса сказать?
Товарищ Бородин, я ведь не только php учу

Не надо волноваться, надо учить все по мере необходимости и целесообразности. Надо понять, что и для чего Вам нужно, и в какой мере. И исходя из этого учить. А то, знаете ли, я тоже много чего учил и учу, и программирование - не моя родная профессия, а скорее, хобби, которое меня очень сильно захватило. Но было нужно изучить PHP и я что-то узнал. В достаточной мере, чтобы давать какие-то простые советы.
Если Вы себя видите PHP-программистом, то Вам, скорее, надо изучать вместе с PHP Javascript и ActionScript. А Photoshop и Flash - это уже во вторую очередь, просто, чтобы уметь в них ориентироваться и делать какие-то несложные вещи. Если Вы себя видите дизайнером, то и PHP тогда лучше изучать не слишком глубоко, чтобы время на Photoshop оставалось.

Если Вы что-то не успеваете, значит, Вы, скорее всего, что-то не так делаете, вот и все. Но с изучением трудно в том плане, что никогда не знаешь, когда остановиться. Я начал изучать PHP три года назад. В разное время устраивался на работу программистом. И всякий раз(кроме последнего) чувствовал, что чего-то не хватает, находил что-то новое для себя. Устраивал себе экзамены, так сказать. Большую часть из них я завалил, а теперь я занимаюсь тем, что готовлюсь к пересдаче, сообразуясь с накопленным опытом в анализе собственных ошибок.
давно
Практикант
137657
274
10.02.2009, 20:28
общий
Ну мне тогда больше понадобится php, я смотрю вакансии php-программистов, там требования знаний: php, mysql, js, html, corel draw, photoshop, flash, это все возможно выучить в нужной степени?
Неизвестный
10.02.2009, 20:58
общий
Смежные технологии в данном случае - PHP, Javascript, MySQL, HTML и Photoshop, CorelDraw, Flash. То есть, если простыми словами, то лучше учить 4 смежных технологии, чем 3. Программист, имеющий посредственные знания в Photoshop`е, но знающий PHP, конечно, ценится гораздо выше, чем программист, который хорошо рисует, но PHP знает плохо. В данном случае надо просто знать, что от Вас потребуют на работе в плане знаний Photoshop`а. А это вещь достаточно простая - сделал дизайнер макет(обычно это .PSD), Вам его отдали, и требуется сверстать шаблон. Для верстки Вам обязательно потребуются крепкие знания HTML и CSS. Чтобы вытащить разнообразные картинки из макета или посмотреть, каким цветом окрашены какие-либо области на странице, Вам нужны минимальные навыки работы в PhotoShop`е - скопировать прямоугольную область, создать файл, посмотреть цвет... А вот как сверстать шаблон так, чтобы он отображался во всех браузерах одинаково - этому учиться надо не один день. Готов шаблон - теперь можно и за PHP браться. Или Javascript какой-нибудь в шаблон вставлять.
Видите ли, можно использовать или не использовать шаблоны, но нельзя не признать, что при правильном пользовании ими сокращается время на разработку. По себе знаю, что копаться лишний раз в HTML-инах - утомительное занятие. То ли дело - программу писать на PHP!
Неизвестный
11.02.2009, 09:12
общий
Я у себя на работе фотошоп и порезку полностью отдал дизайнеру, сам чисто занимаюсь программированием на PHP, корректирую данный мне HTML и вставляю, где надо, JavaScript. Подключаю MySQL. Надо будет больше - буду учить больше, но заниматься порезкой - это не мое .
[offtop]А после хорошей работы можно и отдохнуть [/offtop]
Неизвестный
11.02.2009, 10:15
общий
Райкин Сергей Александрович
А я про Вас и не говорю - места работы бывают разные. Скажем, на моем последнем месте работы верстать шаблоны, кроме меня, - для моей работы - было некому. Дизайнерша была(и есть) - блондинко... Но рисовала хорошо, что радовало. А навыки в верстке еще ни одному PHP-программисту не мешали, так что зря смеетесь. PHP-программист знать HTML обязан.

А вот от ответов на вопросы Вы уходите.
Неизвестный
11.02.2009, 10:25
общий
Товарищ Бородин - "места работы бывают разные" -
Я просто стараюсь сугубо заниматься программированием. Меня даже заставляли Perl учить, я, было, взялся, но потом передумали, хотя Perl меня заинтересовал. Может потом, и выучу его.
Я пытался делать порезку, но это надо иметь навыки, и начинать с простых примеров. Получилось - но не то .

Неизвестный
11.02.2009, 10:41
общий
Сергей Александрович, и все же, не могли бы Вы назвать адресок хотя бы одного очень сложного своего проекта? Очень интересно посмотреть, а то я уже начинаю думать, что не надо было за Ваше повышение на экзамене голосовать

[offtop]С днем варенья Вас, кстати... С прошедшим!.. [/offtop]
Форма ответа