Основы PHP сайта, некоторые уточнения, пожалуйста - PullRequest
0 голосов
/ 13 июня 2011

В настоящее время я использую PHP для рендеринга динамического веб-сайта JS + CSS + HTML с помощью операторов echo.PHP заполняет некоторые из переменных JS.

Я хочу расширить это, чтобы включить операторы If / Else, но у меня есть несколько вопросов о том, как PHP взаимодействует с отображаемой страницей

После сайтарендерится (напечатаны все операторы echo) могу ли я вызывать дополнительные функции PHP?Например, если я что-то нажму, могу ли я вызвать функцию PHP?

Не стесняйтесь указывать мне на учебники PHP, которые объясняют, как PHP взаимодействует с сайтом.Как ни странно, я сделал много PHP-кодирования для других задач, я просто никогда не думал об этом с нуля

Ответы [ 3 ]

3 голосов
/ 13 июня 2011

PHP не взаимодействует с сайтом.Единственная функция PHP - выводить текст в браузер.

Посмотрите на это так: если у вас нет PHP, сайт будет состоять из страниц HTML.HTML-страницы могут содержать JavaScript, и пользователь может взаимодействовать с ними.Разница с PHP заключается в том, что вы можете генерировать эти HTML-страницы динамически (что означает, что вы также можете генерировать JavaScript, содержащийся в HTML-страницах динамически).Больше ничего не изменилось.

2 голосов
/ 13 июня 2011

По существу, как только PHP-скрипт завершит работу и напечатает (отобразит) весь html-контент в браузере, он прекратит работу.

По сути, если вы нажимаете на веб-страницу, это может вызвать либо новыйстраница через форму POST или GET ИЛИ, может быть, Javascript может обработать щелчок.И тогда этот Javascript, возможно, может вызвать новый запрос.И этот новый запрос может вызывать скрипт PHP, который выполняет любую задачу, которую вы хотите.

Так что, если вы нажмете на ссылку <a href='action1.php?param1=yes'>Click here</a>, то это вызовет скрипт action1.php (с $_REQUEST['param1'], установленным в'yes') на веб-сервере, и веб-браузер отображает все, что возвращает.И этот новый html заменяет весь html, который в настоящее время находится в окне вашего браузера.

ИЛИ, если у вас есть форма:

  <form action='action2.php' method='POST'>
    <input type='text' name='stuff'>
    <input type='submit>
  </form>

И вы нажимаете на submit, затем снова будет вызываться веб-сервер, новремя, когда скрипт action2.php будет вызываться с $ _POST ['stuff'], установленным в любое текстовое поле.И все, что возвращает скрипт, будет отображаться в браузере.

Теперь, если вы хотите щелкнуть что-то в браузере и просто изменить что-то маленькое на странице или просто выполнить какое-либо действие на сервере, вам следуетвероятно, исследуйте обработчики AJAX и JQuery, в частности

Удачи.

0 голосов
/ 13 июня 2011

Я научился в кодировании никогда не говорить никогда ....

Помимо стандартного Ajax, есть --IS-- способ асинхронного запуска функций PHP: xajax InКороче говоря, он позволяет вам вызывать функции PHP напрямую, без перезагрузки страницы.Предупреждение: документация слабая ....

PHP - это технология на стороне сервера, как уже упоминали другие.Запуск его асинхронно (или после рендеринга главной страницы, в зависимости от обстоятельств) облегчается только с помощью некоторого Javascript voodoo, который xajax вносит в таблицу.Это делает "достаточно хорошую" работу, делающую это возможным.Лично я решил использовать Jquery из-за огромных возможностей, которые он дает для разработки пользовательского интерфейса.Существует множество вариантов выполнения вызовов Ajax.

Ключ к продвижению вашего понимания - размышление о кодировании для FRONT END.Когда я начинал свою карьеру, я был исключительно бэк-эндом, концентрируясь на стандарте if / thens / elses и повторяя соответствующий код.Как только это было на экране, я покончил с этим.Для того, чтобы сконцентрироваться на внешнем интерфейсе, требуется понимание структуры dom - что вы будете использовать для «захвата» элементов, а затем понимание технологии, такой как javascript, для «работы с вашими данными».Короче говоря, это просто другой способ делать то, к чему вы привыкли, с немного другим синтаксисом.Вместо того, чтобы прыгать ногами вначале, чтобы взяться за Ajax или эту конкретную задачу, найдите время, чтобы ознакомиться с основами обхода Dom, и, возможно, с некоторыми основами Javascript или Jquery.В долгосрочной перспективе это значительно облегчит вашу работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...