Как передать переменные PHP в другой файл javascript?

Итак, моя цель — использовать PHP для получения данных из базы данных PostGreSQL. Я хочу использовать эти данные в файле javascript отдельный, чтобы я мог отображать их на экране определенным образом, как настроен мой веб-сайт. Все учебные пособия, которые я видел в Интернете, просто помещают тег script в файл PHP, но я не могу этого сделать, потому что код javascript для отображения на моем веб-сайте находится в отдельном файле. Мне просто нужно, чтобы числа были в файле javascript, который я получил из файла PHP, который получил данные из базы данных PostGreSQL. Как я могу это сделать?

Мне просто нужна помощь со средствами, чтобы добраться до цели, потому что я исследовал самостоятельно, но это всегда не совсем то, что я хочу.

PHP:

<?php
$myPDO = new PDO('pgsql:host=myHost; dbname=myDBName', 'myUsername', 'myPassword');
?>

$result = $myPDO->query("SELECT * FROM table WHERE id = 'someID'");

Теперь я хочу использовать значения этой строки в другом файле javascript. Как я могу это сделать?

похоже, вы хотите AJAX,

user10051234 08.03.2019 03:31

Вы не можете сохранить PHP в файл JavaScript без AJAX.

Obsidian Age 08.03.2019 03:31
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
2
505
4

Ответы 4

Ваш файл JS должен запрашивать данные с вашего контроллера PHP через запрос AJAX. Затем вы можете манипулировать возвращенным объектом данных любым удобным для вас способом.

Для этого можно использовать Ajax. Вы можете сделать что-то подобное в своем JS-файле:

$.ajax({
    type: "GET",
    url: 'FILENAME.php',
    success: function(data){
        alert(data);
    }
});

а затем в вашем FILENAME.PHP просто верните значения.

Затем ваш JS должен выполнить все, что было возвращено, в данном случае ваш запрос к базе данных.

Я возвращаю значения из файла PHP, выполняя команду echo $result? а затем все, что было в эхе, передается в вызов ajax javascript?

RephaelC 08.03.2019 04:24

Вы можете сделать, или вы можете сделать что-то вроде return $result;. Но да, это надо пройти.

Elliot 08.03.2019 04:25
  1. используйте javascript ajax для вызова php api

  2. передайте свои данные в php в файле просмотра, используйте что-то вроде:

var phpData = JSON.parse("<?php echo json_encode($data)); ?>");

У нас есть в основном два метода для передачи значения php в переменную javascript.

  1. Simple variable method at the time of first page load
<script>
  var js_variable = <?php echo $data_php_variable; ?> ;
  //this is working only at the first time of the page load
  //you can also parse the data to any format
</script>
  1. Use AJAX call to trigger a PHP request and manipulate return PHP value in JS
$.ajax({
    type: "GET", //get or post method
    url: 'FILENAME.php',   //php request url
    data :{}, //optional ,you can send data with request

    success: function(res){ 
        // this 'res' variable is the php return data in the form of js data 
        console.info(res);
    }
});

Метод ajax более динамичен, он может использовать обработку запросов в любое время.

Другие вопросы по теме