Javascript var from php

Как передать значение переменной из php-скрипта в javascript?

Первый способ: Отдельный AJAX-запрос к PHP-файлу, который вернёт что-нибудь вроде JSON-данных, которые потом будут доступны из JS.

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

        blah-blah-blah 

Файл /scripts/myscript.js:

// Выскочит алерт с текстом «text for js_variable». alert(js_variable);

Вот. В HEAD-части HTML-страницы вы определяете переменную, которая будет доступна для остального JS-кода. Главное — нужно её определять до того, как будут подключены скрипты, которые будут её использовать.

Третий способ: Если ваш web-сервер — Apache, то можно добавить в .htaccess в корне сайта такие строки:

AddType application/x-httpd-php .js AddHandler x-httpd-php5 .js SetHandler application/x-httpd-php 

Тогда вы сможете прямо в JS-файлах выполнять PHP-код. Но выполняться он будет только в тех JS-файлах, которые находятся в папке с сайтом. Если будут загружаться скрипты со сторонних ресурсов, там PHP-код работать не будет.

Читайте также:  Асинхронное программирование java это

Источник

Передача значений переменной из PHP в JavaScript

Здравствуйте уважаемые читатели. За ранее хочу сказать, что это мой первый пост и не судите очень строго.

Сегодня пост будет посвящен передачи значений переменной PHP в JavaScript — сценарий.
Этот урок подойдет самым новичкам, тем кто только начинает заниматься Web — программированием.
Для начала создадим обычный документ index.php и его каркасом будет служить простой HTML код.

Весь код JavaScript и PHP будем писать в теги BODY.
PHP переменная $CITY будет равна «Ivanovo». Значение этой переменной нам нужно передать в переменную TOWN JavaScript`a.

Давайте теперь напишем следующий код в файле index.php:

  

И так рассмотрим выше приведенный нами программный код. У нас есть PHP-переменная с именем CITY и значением Ivanovo, и наша задача состоит в том, чтобы это значение вывести на экран, но не средствами PHP, а с помощью JavaScript.
Для этого мы как обычно открываем теги JavaScript и объявляем переменную TOWN.

На месте присвоения JavaScript переменной TOWN, мы пишем PHP код, который выводит нашу переменную CITY.
Наступило время проверить наш код в действии.

Наш браузер выдал нам следующее:
Город невест и молодежи: Ivanovo

image

При просмотре исходного кода страницы мы увидим:

Из всего выше перечисленного делаем вывод, что передавать переменную из PHP в JavaScript очень просто.
Спасибо за внимание, с вами был DangerPro

Источник

Как передать переменную JavaScript в PHP и наоборот?

Как передать переменную JavaScript в PHP и наоборот?

На форумах очень часто можно встретить вопросы вроде:

Как передать переменную в JavaScript из PHP? или Как передать данные из PHP в JavaScript?

Эти вопросы выдают новичков и сейчас я постараюсь объяснить почему. А также ответить как же все-таки это сделать.

Почему вопрос о передаче переменной из языка в язык — вопрос новичка? Потому что невозможно это сделать! Языки программирования работают каждый самостоятельно. А передача напрямую между ними невозможна. Сейчас объясню почему.

Дело в том, что PHP и JavaScript связаны лишь условно. PHP работает на сервере, а JavaScript — в браузере.

Напомню алгоритм работы интернета. То есть, что происходит, когда вы запрашиваете адрес. Например, что должно произойти чтобы выполнилась JavaScript функция на странице http://dayte2.com.

  1. Браузер формирует заголовки запроса, присоединяет к в них какую-то важную информацию о себе и отсылает их на этот адрес.
  2. Сервер принимает заголовки и понимает что нужно отдать документ. Он понимает, что запрашивается не документ, а программа. Тогда он запускает эту программу и отдает ей все данные, что получил от браузера.
  3. Программа (php-скрипт) запускается, отрабатывает и просто печатает результат своей работы. Результатом работы может быть html-страница, куда включены JavaScript-скрипты. Но мы помним, что в данный момент работает PHP и JavaScript для него ничем не отличается от любых других данных. Просто буковки.
  4. Сервер получает то, что напечатала программа. Прикрепляет заголовки ответа и отсылает все это запросившему браузеру.
  5. Браузер получает код страницы и отображает его. Догружает нужные файлы (js, css, картинки), применяет их к html-коду. И только теперь включается JavaScript, встроенный в браузер.

Если посмотреть внимательно на этот порядок работы, можно ответить на вопрос

Как передать переменную из PHP в JavaScript?

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

Если вы создадите файл php с таким содержимым и запустите его из браузера — вы увидите пустую страницу и сообщение alert.

Разумеется, нужно помнить, что синтаксис должен быть JavaScript. Фактически, когда мы формируем код JS на PHP — мы должны помнить, что сначала php что-то сгенерирует и это что-то должно быть валидным JS.

В данном случае наш php-скрипт формирует строку:

А это — вполне корректный JavaScript, который будет выполнен браузером.

Как передать переменную из JavaScript в PHP?

Можно догадаться, тут дела обстоят труднее. Ведь php генерирует JS, а вот обратная связь не подразумевается особо. Так что хочешь-не хочешь, а придется формировать новый запрос к серверу, передавая в нем данные для скрипта. У нас есть два основных метода передачи данных. Реализация может быть как через синхронные, так и через асинхронные запросы. Синхронные вызовут перезагрузку страницы, а асинхронные используют Ajax.

Синхронный метод передачи данных в php из JavaScript

   

Этот код немедленно перенаправит пользователя по адресу http://dayte2.com/index.php?message=Hello%2C%20server!

PHP-код в файле index.php получит данные из GET и сформирует суперглобальные массивы.

Асинхронная передача переменной из JavaScript в PHP

Это подразумевает использование Ajax. По сути, осуществляется то же, что и в предыдущем случае, но не перезагружается страница браузера. Проще всего это проиллюстрировать используя библиотеку jQuery.

  

Как видим, все еще проще. Не нужно применять функцию encodeURIComponent, ее применяет за нас jQuery. Мы описываем функцию, которая принимает ответ сервера и складывает его в переменную data. Если index.php возвращает просто значение переменной $_GET[message], то мы увидим alert с текстом «Сервер ответил: Hello, server!».

Передача сложных объектов из php в Javascript

Мы помним, что при генерации JavaScript из php, нужно придерживаться синтаксиса JavaScript. Поэтому нужно перевести данные из представления PHP в представление JavaScript. Проще всего это сделать, воспользовавшись форматом JSON и функцией json_encode(), которая превратит объект или массив php в строку, которая при выполнении движком JavaScript, даст объект JavaScript.

'123','key'=>'value'); $js_obj = json_encode($arr); print ""; ?>

Тут можно начать путаться. Но ничего страшного нет. Достаточно помнить последовательность. Сперва выполняется php, затем — JavaScript. После выполнения php получится:

Что при выполнении выведет нам alert с текстом ‘123’.

Итого

Нужно помнить что php генерирует JS, поэтому передавать из него данные довольно просто. Нужно формировать JS так же, как формируется html. С соблюдением синтаксиса JavaScript.

Для передачи данных из JS в PHP всегда используется дополнительный запрос. Как он осуществляется — дело десятое. Например, может формироваться и отправляться форма. Или открываться iframe. Но суть остается. Понимая эту суть, можно перекидывать любые данные из браузера на сервер и обратно довольно просто.

Источник

Pass Variable From PHP to JavaScript

Pass Variable From PHP to JavaScript

  1. Use AJAX to Pass the PHP Variable to JavaScript
  2. Use JavaScript to Escape the PHP Scripts to Pass the PHP Variable to JavaScript
  3. Use the Short PHP Echo Tag, Inside the JavaScript to Pass the PHP Variable to JavaScript

We will introduce a way to pass the PHP variable to JavaScript using AJAX. This method requests the data from the PHP server and runs on the client machine.

We will also demonstrate another method to pass the PHP variable in JavaScript by escaping the PHP to JavaScript. We write JavaScript after the PHP scripts to escape the PHP.

We will show you another example to pass the PHP variable to JavaScript using the short echo tag in the JavaScript as where $var is the PHP variable.

Use AJAX to Pass the PHP Variable to JavaScript

We can use AJAX to get the data and variables from the PHP server to JavaScript. This method has separate server-side and client-side scripts. It makes the code cleaner and enhances the code readability. AJAX stands for Asynchronous JavaScript and XML. It uses the XMLHttpRequest object to request the data from the server. It displays the data using JavaScript and HTML DOM. This process occurs asynchronously, which means the changes happen in the webpage without the page being reloaded. However, there is latency when AJAX is used over networks because it sends the HTTP request. In this method, we write JavaScript code in the PHP file.

For example, create a PHP file named index.php . Write the JavaScript code inside the tag. Create a vairable req using the var keyword. Create a request object of the XMLHttpRequest() function and assign it to the req variable. Call the onload() function with the req object using the function expression. Inside the function, use the console.log() function to log the this.responseText property. Do not forget to end the function expression with a semicolon. Use the req object to call the open() function. Supply get , get-data.php and true simultaneously as the parameters in the function. Call the send() function with the req object. Create another PHP file named get-data.php . Assign a value of Mountain to $var variable. Echo the json_encode() function with the $var as the parameter.

In the example below, we created a request object with the XMLHttpRequest() function. The onload() function handles the operation to be performed during the response. The open() function specifies the HTTP method, the PHP file that sends the JSON response, and a boolean value that controls the rest of the execution of the script. The json_encode() function in the get-data.php file sends the response in JSON format. Here, we printed the variable $var in the console.

# php 7.*  php ?>  var req = new XMLHttpRequest();  req.onload = function()   console.log(this.responseText);  >; req.open("get", "get-data.php", true); req.send();  
# php 7.*  php $var = "Mountain"; echo json_encode($var); ?> 

Use JavaScript to Escape the PHP Scripts to Pass the PHP Variable to JavaScript

We can use JavaScript after the PHP tags to escape the PHP scripts. We can create a PHP variable in the PH P script. Then, we can write the JavaScript to escape the above-written PHP and pass the variable inside the JavaScript code. Inside the JavaScript, we can use the PHP tag to echo the PHP variable assigning it to a JavaScript variable.

For example, assign a value Metallica to a variable $var inside the PHP tags. Write a script tag and inside it, write a PHP tag. Inside the PHP tag, echo a JavaScript variable jsvar . Assign the PHP variable $var to jsvar . Do not forget a quote wrapped around the $var and a semicolon after it. Close the PHP tag and log the value of jsvar using the console.log() function. Close the script tag. In the example below, we have logged the PHP variable $var in the console using JavaScript. We can see the output in the console of the webpage.

#php 7.x  php $var = 'Metallica'; ?>     echo "var jsvar ='$var';";  ?>  console.log(jsvar);  

Use the Short PHP Echo Tag, Inside the JavaScript to Pass the PHP Variable to JavaScript

We can use the short PHP echo tag inside the JavaScript to pass the PHP variable to JavaScript. We can use the short PHP echo tag to get rid of the hassle of writing the PHP tag and the echo statement. It is a short-hand method. This method is very much similar to the second method in terms of the concept and the execution.

For example, assign a value Megadeth to a variable $var inside the PHP tags. Open a script tag and create a JavaScript variable jsvar . Write the short-hand echo tag as the value of the jsvar variable. Log the variable using the console.log() function. We can view the output of the script in the console of the webpage.

#php 7.x  php $var = 'Megadeth'; ?>   var jsvar = '';  console.log(jsvar);  ?> 

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

Источник

Оцените статью