Библиотека программиста

14.12.2019 - Взаимодействие PHP и JavaScript

В этом статье обсуждаются особенности работы со скриптами JavaScript в PHP. В отличие от PHP, скрипты JavaScript выполняются на машине клиента, в то время как PHP серверный язык программирования. В отличие, от технологии Java или ASP.NET он не имеет в своём составе средств для работы на клиентской стороне. Поэтому для создания эффективных Web-приложений необходимо комбинировать PHP и JavaScript скрипты. Существует две возможности такого взаимодействия: передача переменных из JavaScript в PHP и динамическое формирование скриптов JavaScript средствами PHP.

Передача переменных из JavaScript в PHP


Одной из распространенной задачей является определение разрешение экрана и глубину цвета монитора посетителя страницы средствами JavaScript с последующей передачей этих данные в PHP-скрипт.

Это довольно часто встречающаяся задача, особенно при написании счетчиков посещений и создании "динамического дизайна".

Скрипт JavaScript, выполняющий необходимые действия, размещен файле index.html, содержимое которого приведено в нижеследующем листинге:

Файл index.html

Код
<Script Language="JavaScript">
var height=0;
var width=0;
colorDepth = screen.colorDepth;
if (self.screen)
{
width = screen.width
height = screen.height
}
else if (self.java)
{
var jToolKit = java.awt.Toolkit.getDefaultToolkit();
var scrsize = jToolKit.getScreenSize();
width = scrsize.width;
height = scrsize.height;
}
if (width > 0 && height > 0)
{
// Производим перенаправление на скрипт counter.php, передавая в
// переменной scrsize строку, содержащую значения width,
// height и colorDepth.
window.location.href = "http://localhost/view.php?
width=" + width +
"&height=" + height +
"&color=" + colorDepth;
} else exit();
</Script>


После выполнения этого кода происходит автоматический переход на страницу view.php, в котором происходит вывод разрешения экрана и глубины цветопередачи в окно браузера (см. листинг ниже).

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

Файл view.php

PHP - Код
echo "Ширина : ".$_GET['width'];
  echo 
"Высота : ".$_GET['height'];
  echo 
"Цветовое <sup>разрешение</sup> : ".$_GET['color'];



Как видно, работа с данными из JavaScript, аналогична работе с данными, отправляющихся методом GET.
Опубликовано на сайте: http://www.coders-library.ru
Прямая ссылка: http://www.coders-library.ru/index.php?name=news&op=view&id=341