Как совместить javascript и php

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

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

В свою очередь, на языке JavaScript создаются исключительно клиентские скрипты, которые исполняются в браузере клиента. Для сервера скрипты JavaScript – это обычные текстовые данные, ничем не отличающиеся от прочего содержимого страницы.

Различаются языки и по уровню безопасности. При выполнении PHP-скрипта вы можете обращаться к файловой системе сервера, базам данных и другим внешним объектам, на которые вам предоставили права администраторы. А вот JavaScript ограничен только встроенными объектами браузера и с их помощью вы не сможете читать или писать непосредственно на диск. Сделано это в первую очередь для защиты от злоумышленников, т.к. если разрешить доступ скриптам к системной информации и файлам – обязательно найдётся умелец, который напишет код, скрытно отсылающий ваши файлы кошельков, логины, пароли и другую закрытую информацию на адрес умельца.

Помимо прочего, протокол HTTP, по которому передаются все веб-страницы, не поддерживает постоянных соединений, т.е. браузер подключается к серверу, запрашивает страницу, получает данные и немедленно отключается. Это означает, что все скрипты PHP завершаются ещё ДО того, как начнутся выполняться скрипты JavaScript.

Таким образом, сам собой напрашивается вывод: прямое взаимодействие скриптов на PHP и JavaScript попросту невозможно.

Но не всё так фатально, косвенное взаимодействие мы обеспечить всё-таки можем. Для передачи данных между клиентской и серверной стороной можно использовать один из трёх вариантов:

Первый способ пригоден только для передачи данных и параметров с сервера на клиент. Суть метода проста: при генерации страницы необходимые параметры зашиваются прямо в текст скрипта.

В этом примере мы на этапе формирования страницы вписываем в неё заданную переменную с нужным нам значением. Работает это так:

Второй способ несколько сложнее, но позволяет передавать параметры как со стороны сервера, так и со стороны клиента. Суть в том, что и PHP и JavaScript позволяют читать и сохранять cookies (подробнее про cookies рассказывалось в одном из предыдущих уроков). Например (условный):

Здесь мы на стороне сервера устанавливаем cookie с необходимыми нам параметрами. При этом клиенту посылается специальным образом сформированная команда и данные, т.е. все cookie передаются ДО передачи основной страницы. Это значит, что все установленные сервером cookie будут доступны после загрузки страницы, а значит и при выполнении скриптов JavaScript.

Аналогично и для обратной передачи: все cookies, установленные из JavaScript, будут переданы на сервер при первом же обновлении страницы.

Основной недостаток этого метода – ограничение на размер передаваемых данных. Максимальный размер одного cookie не может превышать 4Кб, а у некторых пользователей возможность установки cookies вообще отключена. Так же этот способ создаёт большой дополнительный трафик, т.к. все cookies автоматически отправляются на сервер при каждом обновлении страницы.

У обоих методов взаимодействия есть два общих недостатка:

Последний способ взаимодействия – AJAX. Это наилучший, пусть и не самый простой способ. Ajax – это комбинированная технология, использующая все преимущества PHP и JavaScript, позволяя изменять и обновлять данные на страницах вашего сайта «на лету», т.е. без перезагрузки страницы.

Для использования Ajax обычно создаётся так называемые «frontend» и «backend». Backend – это PHP-скрипты, выполняющиеся на сервере. Обычно такие скрипты возвращают структурированные блоки данных (массивы), не содержащие никакого оформления.

Frontend – это скрипты JavaScript, выполняющиеся в браузере пользователя. Основное их назначение – вызвать требуемый скрипт backend`a, получить данные и правильно их вывести на странице, добавив при необходимости обрамление из тегов и стилей.

Подробнее об использовании Ajax вы можете прочитать в соответствующем уроке по JavaScript на этом сайте.

Таким образом, взаимодействие PHP и JavaScript наладить всё-таки можно, но для этого надо хорошо разбираться в обоих языках. Из собственного опыта могу сказать, что для домашних страничек и небольших сайтов проще всего применять первый способ (прямую запись текста скрипта). Для проектов покрупнее или динамичнее – Ajax. А вот от третьего способа я бы рекомендовал вам воздержаться, т.к там слишком много подводных камней и условностей, таких как размер cookie, их поддержка браузерами, формат данных, кодировка и т.п.

Источник

JS-PHP MVC интерфейс — cобираем всё вместе

Для начала я хочу поблагодарить m007, который подал идею, как можно упростить Programmer-friendly интерфейс взаимодействия Клиент(JS)-Сервер(PHP), что и поспособствовало написанию этой статьи.

Данная статья является заключительной, в которой я объединю JS-Шаблоны, PHP Model-controller, и добавлю Динамическое создание UI методов на JS (некоторые идеи которого были взяты из статьи m007). Тем самым мы получим на выходе неплохой и удобный фундамент для создания своих AJAX приложений.

Динамическое создание методов на JavaScript

Для начала хочу обратить ваше внимание, что все наши методы лежат в PHP-библиотеке. Каждый метод можно вызвать, передав определенные параметры в стиле JSON. И чтобы вызвать PHP-метод из JS, я предлагал в прошлой статье использовать функцию server_exec. Но можно это сделать более удобно и
информативно для программиста.
m007 предложил вызывать функции прямо из JS, то есть вместо server_exec(«database_func(. );»,function()<. >) использовать в JS database.func(. ).

В PHP, для не объявленных функций, есть метод __call. В JS такого метода нет, но можно предварительно подгрузить методы из PHP-библиотеки и динамически добавить их в JS-класс.

Для этого в PHP-класс UserInterface (см. прошлую статью) был добавлен метод, который при ‘пустом’ запросе выводил все зарегистрированные методы.
На Javascript написан класс PHPUIclass, который является интерфейсом для UserInterface. В этом классе описан метод обработки `пустого` запроса (спасибо DmitryBaranovskiy за приведение кода в порядок):

Эта функция вызывается, когда PHP-библиотека возвращает названия зарегистрированных методов UI (ответ на ‘пустой’ запрос). Исходя из этих данных, этот метод создаёт внутри своего класса новые методы, которые используют для вызова public-методов PHP-библиотеки.

При запуске метода, происходит кодирование входящих параметров (request.push(‘»‘+methods[index]+'»:’+that.methods(Array.prototype.slice.call(arguments)))) и установка нулевого таймера на функцию для отсылки запроса. Думаю, что некоторых читателей этот момент удивил. По этому я остановлюсь на нём поподробнее.

Javascript не имеет потоков и весь код выполняет последовательно. Состояния у него всего два – выполнение кода и ожидание прерывания. Прерывания могут прийти, например, от таймера (по таймауту), от AJAX запроса (при смене статуса) и т д. При этом запускается состояния выполнение кода, который не прерывается, пока не дойдёт до конца.
Именно для этого я использую нулевой таймер, который запустит выполнение функции отсылающей запрос на сервер, после окончания выполнения основного кода. Сделано это для того, чтобы отсылать всё одним инкрементированным запросом, состоящим из всех вызываеммых функций и обрабатывать результаты последовательно.

Теперь можно перейти к обработке результатов запроса. Так как обработчик будет вызван не сразу – то это будет функция или несколько функций, которые необходимо вызвать, когда придет ответ.
Этим занимаются методы run и ajax_run. Первый добавляет функции на запуск после получения ответа. Функции должны иметь вид function(data). А функция ajax_run занимается их запуском.

//Инициализация класса удаленной работы с файлами.
/* Синхронный запрос на вызов FileManager.php.
Получение методов dir,save,read.
Динамическое создание функций. */
var File= new PHPUIclass( ‘FileManager.php’ );

//Установка функций для получения результатов запроса.
/* Добавление функции для обработки запроса read */
File.run(show_file);

/* Добавление функции для обработки запроса dir */
File.run(show_dir);

function check_file(result) <
if (result.ERROR && result.ERROR.checkfile)
show_error(result.ERROR.checkfile);
else <
// Всё прошло нормально?
// Тогда ещё один запрос, уже на чтение.
File.read(result[ «filename» ]);
File.run(show_file);
>
>

//Вызов удалённых функций
File.checkfile( «edited.txt» );

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

Пример

А вот — простой пример. File-viewer с возможностью редактировать файлы.

PHP:
UI.php основной класс UserInterface — подключается в библиотеку.
mod.fileview.php библиотека для чтения-записи файлов — функции read и save.
mod.dirview.php библиотека для чтения дириктории — функция dir.
mod.backup.php библиотека для формирования save.log — функции read,save,dir.
FileManager.php основной файл, который включает в себя все модули и запускает обработчик запроса.

Javascript:
PHPUI.js основной класс, который занимается подключением к интерфейсу UserInterface в php.
skin.js — класс работы с шаблонами.
index.html — загрузка шаблонов, вывод файлов.

Послесловие

Плюсы:
— Удобство программирования и создания новых методов для JS-интерфейса
— Ясность и прозрачность кода
— Универсальность методов
— Возможен вызов функций с неопределенным количеством параметров
Минусы:
— Нет проверки на параметры методов. Возможны простейшие ошибки при создании кода. Но для этого можно в PHP-функциях проверять пришедшие параметры (например для DEBUG-MODE). В случае не верных параметров, выводить alert(«ERROR»).

Источник

PHP и JavaScript

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

В языках PHP и JavaScript предусмотрены разные объектные системы обозначений. В языке JavaScript используется так называемая уточняющая запись через точку в стиле C#, тогда как в языке PHP используются стрелки, иначе говоря, система обозначений в стиле C++. Язык JavaScript полностью объектно-ориентирован, тогда как в языке PHP объекты рассматриваются как необязательное средство. Такое различие систем обозначений имеет свое преимущество в том, что невозможно когда-либо спутать объект JavaScript с объектом PHP, или наоборот. А недостатком является то, что отсутствует возможность обратиться к одному и тому же объекту из обоих языков.

Вывод кода JavaScript с помощью сценария PHP

Язык PHP является серверным (поскольку для интерпретации кода на этом языке используется серверное приложение), а язык JavaScript — клиентским (аналогичное замечание), поэтому может показаться, что при использовании того и другого языка в одном и том же сценарии формирования страницы будут возникать проблемы. Но в действительности именно благодаря указанному различию эти два языка хорошо дополняют друг друга.

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

С другой стороны, клиентский язык JavaScript сам по себе характеризуется многими ограничениями. Например, будучи клиентским языком, JavaScript не позволяет организовать непосредственное взаимодействие с базой данных, поэтому сценарии JavaScript не способны обновлять сами себя путем получения новых данных, зависящих от условий просмотра страницы.

Еще более важный недостаток состоит в том, что невозможно полностью полагаться на клиентские технологии, поскольку язык поддержки этих технологий может оказаться не установленным или запрещенным в браузере пользователя. Сознательные разработчики клиентских приложений для веб вынуждены либо выбирать вариант реализации кода наугад (и получать жалобы от пользователей менее распространенных браузеров), либо одновременно сопровождать несколько версий одного и того же сайта. (Несознательные разработчики просто берут за основу все возможности браузера, наиболее распространенного в среде пользователей, и, как один старый моряк, говорят: «К черту торпеды. «, но это — совсем другая история.) Язык PHP позволяет смягчить эффекты, связанные с неопределенностью поддержки клиентского программного обеспечения.

Широкие возможности вывода данных в языке PHP

Одной из наиболее важных особенностей языка PHP является то, что с его помощью можно обеспечить вывод кода в различных форматах. В частности, PHP может применяться (и применяется) для вывода открытого текста, кода HTML, XHTML, JavaScript, XML, MathML, файлов в различных графических форматах, кода CSS, XSL и даже (что трудно сначала представить себе) кода ASP.NET.

Кроме того, нет каких-либо реальных технических сложностей, которые не позволяли бы выводить с помощью языка PHP код C, хотя, по-видимому, такой способ применения PHP не находит слишком широкого распространения. Следует помнить, что язык PHP не используется исключительно для вывода кода HTML — конечным продуктом применения этого языка обычно становится код, предназначенный для обработки другим приложением, обычно браузером.

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

Как и при формировании в сценарии PHP кода HTML, в некоторых случаях код JavaScript можно формировать, не выходя из режима PHP. К тому же подобный стиль организации работы сценариев PHP может соответствовать личным предпочтениям разработчика. В этом случае для вывода кода JavaScript может использоваться оператор echo или print языка PHP, как в следующем примере:

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

Области применения языка JavaScript

Клиентский код JavaScript не обладает чрезвычайно большими функциональными возможностями, но позволяет быстрее решать некоторые задачи, а также создавать такие эффекты, которые довольно сложно воспроизвести с помощью PHP. Ниже перечислены такие функциональные средства кода, которые действительно следует дополнить или заменить в коде HTML-страницы функциями JavaScript:

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

Простая проверка правильности формы (например, определение наличия символов @ в адресах электронной почты).

Реализация средств навигации сайта (например, создание разворачивающихся меню навигации).

Создание всплывающих меню (предупреждений, окон поиска).

Обработка событий, обнаруживаемых в браузере (mouseover, onclick).

Резервирование функциональных средств кода JavaScript с помощью кода PHP

Безусловно, как показывают приведенные выше рекомендации, язык JavaScript позволяет расширить функциональные возможности сайта, но если язык JavaScript не установлен в браузере или его использование запрещено, то компенсировать отсутствие поддержки JavaScript можно с помощью PHP. Дело в том, что иногда существует возможность безукоризненно выполнить одну и ту же задачу и с помощью клиентского, и с помощью серверного метода.

Если в браузере посетителя будет разрешено применение языка JavaScript, то посетитель получает возможность воспользоваться более быстрым методом. В противном случае применяется менее быстрый, резервный метод, но обычно посетители даже не замечают, что в коде сайта реализуется подобный выбор. А если бы не было возможности вместо кода JavaScript переходить к использованию кода PHP, то пользователи браузера без поддержки JavaScript были бы полностью лишены доступа к функциональным средствам сайта.

Идеальным примером резервирования кода JavaScript с помощью кода PHP является дважды зарезервированное разворачивающееся меню для навигации по страницам сайта без использования ссылок. Код JavaScript обеспечивает мгновенное перенаправление, а если в браузере не разрешено использование JavaScript, то в действие вступает код PHP, с помощью которого достигается такой же результат, но после более продолжительного ожидания.

В этом примере взят за основу тот факт, что в коде JavaScript имеются обработчики событий (например, onchange), которые выполняют свои действия в результате прохождения курсора над элементами формы HTML, поэтому фактически не требуют передачи данных формы щелчком на кнопке. Это означает, что кнопка Submit может быть зарезервирована для использования в коде PHP. В примере ниже показан сценарий формирования HTML-страницы, в котором используется перенаправление с помощью события onchange языка JavaScript, а если этот код не работает, то применяется обработчик формы PHP:

Обработка формы с помощью JavaScript

В файле обработчика формы PHP, называемом redirect.php, достаточно предусмотреть только две строки:

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

Сравнение методов статического и динамического формирования кода JavaScript

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

Используя язык PHP в сочетании с базой данных, вы можете обеспечить автоматическое обновление определенной части кода JavaScript каждый раз после ввода новых данных в базу данных, иначе говоря, обеспечить динамическое обновление. К достижению такой цели следует стремиться при любой возможности, поскольку в долговременном плане это помогает экономить время. В примере ниже показано, как можно модифицировать форму, чтобы обеспечить лучшую интеграцию клиентского и серверного кода:

Исходная страница с динамически генерируемой формой

Несомненно, читатель уже понял, что аналогичный метод может оказаться буквально бесценным, даже если создается простая форма JavaScript (например, такая, в которой используется обработчик событий onsubmit, а не onchange). В частности, этот метод позволяет модифицировать вызовы обычных функций JavaScript, поскольку язык PHP позволяет изменять значения переменных в вызове функции, до того как код этого вызова будет отправлен в браузер. Поэтому при желании сценарии PHP могут использоваться непосредственно для вывода кода JavaScript, в котором предварительно осуществляется подстановка значений переменных, взятых из какого-то источника данных.

Передача данных в обратном направлении, из кода JavaScript в код PHP

Наконец, рассмотрим, как завершить цикл обработки данных, снова передав значения формы в код PHP из кода JavaScript. В примере ниже показано, как использовать код JavaScript, для передачи в сценарий PHP простого объекта:

Передача объекта из кода JavaScript в код PHP с использованием формата JSON Как совместить javascript и php. Смотреть фото Как совместить javascript и php. Смотреть картинку Как совместить javascript и php. Картинка про Как совместить javascript и php. Фото Как совместить javascript и phpВзаимодействие JavaScript и PHP Безопасность PHP и XML

Источник

Как правильно подключить JS- и PHP-скрипты к вашему сайту?

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

Подключение JS-скриптов (файлы с расширением *.js) к сайту

JavaScript помогает нам во многих моментах повысить функциональность сайта. Будь то стилизация форм или, например, какая-нибудь техническая сторона вопроса.

Подключение JavaScript’а осуществляется двумя способами:

1. Первый – это непосредственно вставка кода в ваш сайт с помощью тегов:

2. Второй – с помощью файла:

Где «https://www.pandoge.com/main.js» – путь до файла скрипта. Такой вариант рекомендуется писать для файлов на удаленном (внешнем) сервере. Если же файл находится на вашем сайте, то можно просто указать относительный путь:

Это удобно, если вы вдруг захотите сменить домен или перевести сайт на другой протокол.

Что касается места подключения, то все скрипты рекомендуется подключать в секции HEAD, перед закрывающим ее тегом. Например:

Их также можно подключить в секции BODY. Например, все библиотеки рекомендуется подключать в секции HEAD, тогда как все счетчики, слайдеры, галереи и прочие скрипты – в секции BODY, также перед закрывающим тегом.

Подключение PHP-скриптов (файлы с расширением *.php) к сайту

Подключение PHP-скриптов осуществляется уже тремя способами:

1. Первый – это та же вставка кода в саму страницу сайта (обратите внимание, что если вы имеете страницу с расширением *.html – вам необходимо сменить расширение на *.php) с помощью тегов:

2. С помощью файла (в таком случае подключение можно осуществлять и на странице с *.html расширением):

Но для работы этого способа в файл .htaccess, который находится в корне вашего сайта, в самый верх, необходимо добавить эти строки:

3. Третье – с помощью JS-скрипта. В этом случае вы также можете получить результат выполненного PHP-скрипта на сервере.

Реализация будет следующая:

Где «.result» – это класс, куда будут грузиться данные, а «/main.php», соответственно, адрес до PHP-скрипта.

Если вы грузите данные с другого сервера, то поддержка PHP на вашем сервере не обязательна. Не забывайте подключить к вашему сайту библиотеку jQuery.

Здесь правила абсолютно те же: полный адрес к файлу, если он находится на внешнем сервере, относительный – если на вашем.

Обратите внимание! Если вы хотите подключить PHP-скрипт к вашему сайту, то на сервере должна быть поддержка PHP. О том, есть ли у вас такая возможность – узнайте у своего хостинг-провайдера.

Если вы осуществляете подключение скриптов первый раз – попробуйте подключить скрипты из архива, который прикреплен в конце статьи. Если в обоих случаях вы получили сообщение «Hello World!» – значит, вы все сделали правильно.

Источник

Как совместить PHP и JavaScript?

Здравствуйте, уважаемые читатели блога SoftMaker.kz. На нашем блоге уже есть некоторые статьи о работе в PHP. Например, что такое PHP, как начинающим разобраться с объектно-ориентированным программированием в PHP, также приведены некоторые примеры программирования в PHP. А сейчас мы рассмотрим небольшой пример совмещения PHP и JavaScript.

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

Теперь в HTML-коде запишем следующее:

Поделиться записью

Это и так понятно, для детей что-ли написали? Вы наоборот попробуйте сделать из JS в PHP.

Не все же «взрослые», т.е. уже знающие. Есть и те, кто только начинает.

Комментарии закрыты.

Рубрики

Рубрики

У вас есть группа в Telegram? В этой статье подробно написано, как настроить канал и группу в Telegram, чтобы отправлять запланированные посты, используя TelepostBot.

В этой статье вы найдете решение проблем с переходом сайта с HTTP на защищенный протокол HTTPS

Свежие комментарии

Страницы

Метки

Наши сайты

Этот сайт использует файлы cookie. Продолжая просматривать сайт, вы соглашаетесь с тем, что мы используем файлы cookie.

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

Чтобы узнать больше, нажмите на ссылку категории. Вы также можете изменить свои предпочтения. Обратите внимание, что запрет некоторых видов cookies может сказаться на вашем опыте испольхования сайта и услугах, которые мы можем предложить.

These cookies are strictly necessary to provide you with services available through our website and to use some of its features.

Because these cookies are strictly necessary to deliver the website, refuseing them will have impact how our site functions. You always can block or delete cookies by changing your browser settings and force blocking all cookies on this website. But this will always prompt you to accept/refuse cookies when revisiting our site.

We fully respect if you want to refuse cookies but to avoid asking you again and again kindly allow us to store a cookie for that. You are free to opt out any time or opt in for other cookies to get a better experience. If you refuse cookies we will remove all set cookies in our domain.

We provide you with a list of stored cookies on your computer in our domain so you can check what we stored. Due to security reasons we are not able to show or modify cookies from other domains. You can check these in your browser security settings.

We also use different external services like Google Webfonts, Google Maps, and external Video providers. Since these providers may collect personal data like your IP address we allow you to block them here. Please be aware that this might heavily reduce the functionality and appearance of our site. Changes will take effect once you reload the page.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *