Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
0 / 0 / 4
Регистрация: 06.10.2013
Сообщений: 181

Как передать переменную с php в javascript

21.01.2015, 18:09. Показов 1822. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите кто знает. Меня есть метод в контроллере написан на php.
PHP
1
2
3
4
5
6
7
8
9
function actionView()
    {
        $get_id_station = trim(htmlspecialchars($_REQUEST['id']));
        $get_id = trim(htmlspecialchars($_REQUEST['id']));
        $data['comments'] = $this->model->get_comment($get_id);
        $data['station'] = $this->model->get_station($get_id_station);
        
        $this->view->generate('post_view.php', 'template_view.php', $data);
    }
Как мне передать переменную $get_id_station в формате json. Так как в дальнейшем она будет обрабативаться с помощью ajax.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.01.2015, 18:09
Ответы с готовыми решениями:

Передать переменную из javascript в php
Пробую вот так: var name="OKO"; $.post('sec.php',{name1:name},function(data){}); в php файле хочу вывести на экран : <?php ...

Передать переменную из javascript в php
В переменной t содержится выбранная пользователем опция. Пытаюсь вывести ее в php через echo $_GET, не получается. Проблема уже в том, что...

Передать переменную из JavaScript на страницу PHP
Добрый день! Знаю, данная тема очень распространена, но не могу применить к себе. У меня есть фаил txt.php с хтмл формами, txt_func.php пхп...

16
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
21.01.2015, 18:16
Цитата Сообщение от juramaj Посмотреть сообщение
Как мне передать переменную $get_id_station
Куда передать? Или вам нужно преобразовать в JSON-строку? Тогда функция json_encode()
0
0 / 0 / 4
Регистрация: 06.10.2013
Сообщений: 181
21.01.2015, 18:18  [ТС]
А как потом в с javascript eё так сказать принять?
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
21.01.2015, 18:27
Цитата Сообщение от juramaj Посмотреть сообщение
А как потом в с javascript eё так сказать принять?
C распростёртыми руками принимайте В jQuery есть параметр dataType. Установив ему значение json, вы получаете в success готовый к использованию объект/массив

Добавлено через 2 минуты
Если без этого параметра, то ручками распарсить ответ JSON.parse(); или $.parseJSON()
0
0 / 0 / 4
Регистрация: 06.10.2013
Сообщений: 181
21.01.2015, 18:31  [ТС]
Вот посмотрите так будет правильно. Если нет то напишите что не так. Вот файл с php методом
PHP
1
2
3
4
5
6
7
8
9
10
11
12
function actionView()
    {
        $get_id_station = trim(htmlspecialchars($_REQUEST['id']));
        $get_id = trim(htmlspecialchars($_REQUEST['id']));
        $data['comments'] = $this->model->get_comment($get_id);
        $data['station'] = $this->model->get_station($get_id_station);
       
        $this->view->generate('post_view.php', 'template_view.php', $data);
 
       json_encode($responseid);
       
    }
И вот сам javascript
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function view(id){
        $.ajax({
            dataType: 'json',
          //  type:'POST',
            url:'/station/view/?id='+id,
            data:{
                count: count,
                begin: begin*count
            },
            success:onAjaxSuccess
        });
 
        function onAjaxSuccess(data)
        {
            $(".wrapper").append(data);
            $(".text").on("scroll", scrolling);
        }
        begin++;
    }
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
21.01.2015, 18:36
PHP
1
2
3
4
echo json_encode($responseid);
exit;
// или просто 
exit( json_encode($responseid) );
Для того, чтоб понять в каком виде данные в переменной data - выведите её в консоль.
0
0 / 0 / 4
Регистрация: 06.10.2013
Сообщений: 181
21.01.2015, 18:44  [ТС]
Когда я написал вот так:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function actionView()
    {
        $get_id_station = trim(htmlspecialchars($_REQUEST['id']));
        $get_id = trim(htmlspecialchars($_REQUEST['id']));
        $data['comments'] = $this->model->get_comment($get_id);
        $data['station'] = $this->model->get_station($get_id_station);
        
            $responseid['success'] = $get_id_station;
        
        $this->view->generate('post_view.php', 'template_view.php', $data);
 
        exit(json_encode($responseid));
 
    }
то оно мне внизу страницы вывело
PHP
1
{"success":"3"}
Наверное что то не так понял
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
21.01.2015, 18:55
Цитата Сообщение от juramaj Посмотреть сообщение
Наверное что то не так понял
И такое может быть. В консоль вывод в этой функции:
JavaScript
1
2
3
4
5
6
7
function onAjaxSuccess(data) {
   console.log(data);
   /*
    $(".wrapper").append(data);
    $(".text").on("scroll", scrolling);
   */
}
Добавлено через 6 минут
Стоп... Так у вас всё правильно выводило. Ключ "success" со значением равным $get_id_station (у вас - 3).
0
0 / 0 / 4
Регистрация: 06.10.2013
Сообщений: 181
21.01.2015, 18:58  [ТС]
только что так сделал, ничего не получилось. Нужно же в браузере нажать просмотр кода елемента и нажать console. Мне вывело кучу всяких строчек, ну ничего подобного я там не видел.

Добавлено через 1 минуту
так оно выводило в php на странице. А мне не нужно чтобы это было видно на странице. А нужно передать в js файл.
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
21.01.2015, 19:01
Цитата Сообщение от juramaj Посмотреть сообщение
так оно выводило в php на странице. А мне не нужно чтобы это было видно на странице.
Где логика? Выводило на странице, а нужно, чтоб на странице было видно. Выводите, разве вам кто-то не даёт?
JavaScript
1
2
3
4
function onAjaxSuccess(data) {
    $(".wrapper").append(data.success);
    $(".text").on("scroll", scrolling);
}
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
21.01.2015, 19:04
Цитата Сообщение от Lazy_Den Посмотреть сообщение
а нужно, чтоб на странице было видно.
Цитата Сообщение от juramaj Посмотреть сообщение
не нужно чтобы это было видно на странице
как-то так
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
21.01.2015, 19:06
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
как-то так
Угу, "не" проглотил... Но тогда не понимаю, чего ТС хочет.
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 829
Регистрация: 09.09.2009
Сообщений: 29,554
21.01.2015, 19:09
ну так тогда нужен отдельный обработчик к которому яваскрипт будет обращаться.
а на страницу это выводить не за чем..
0
0 / 0 / 4
Регистрация: 06.10.2013
Сообщений: 181
21.01.2015, 19:09  [ТС]
там я немного ошибся. Мне не нужно чтобы было видно на странице вот этого {"success":"3"}
Этот я пытаюсь сделать чтобы при прокрутке скрола, постепенно выводились комментарии к статье. И в js мне нужно передать id статьи потом c этого js передать переменную count, чтобы я мог выбрать нужное количество комментариев с БД. Вот такая задача
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
21.01.2015, 19:10
Цитата Сообщение от Lazy_Den Посмотреть сообщение
чего ТС хочет
он хочет передать значение переменной из php в ajax.
0
 Аватар для Lazy_Den
3325 / 2845 / 1423
Регистрация: 15.01.2014
Сообщений: 6,170
21.01.2015, 19:13
Цитата Сообщение от Dmitry Посмотреть сообщение
тогда нужен отдельный обработчик
Не нужен. Все данные можно упаковать в один массив. Одни данные выводить на экран, а другие использовать для дальнейших манипуляций.

Добавлено через 25 секунд

Не по теме:

Цитата Сообщение от Kerry_Jr Посмотреть сообщение
он хочет передать значение переменной из php в ajax.
Это я как раз понял.

0
0 / 0 / 4
Регистрация: 06.10.2013
Сообщений: 181
21.01.2015, 20:08  [ТС]
Подскажите тогда как передать переменную с ajax в php
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.01.2015, 20:08
Помогаю со студенческими работами здесь

Как передать переменную Javascript в php?
Есть код ява с переменной display_width: <script> var display_width = screen.width; </script> и нужно эту переменную передать в...

Как передать переменную из JavaScript в PHP
Очень прошу помочь, застрял и не могу двигаться дальше Проблема вот в чем: Разрабатываю корзину в интернет магазине: есть js-скрипт,...

Как передать значение переменной javaScript в переменную PHP
Сначала я пишу кусочек скрипта на javaScript. У меня там есть допустим переменная Day. В результате выполнения скрипта она имеет...

Как из php файла передать данные в переменную javascript
Обращаюсь по АПИ к стороннему сервису. В ответ получаю данные: Array ( => Array ( => 1122...

Как передать переменную JAVASCRIPT
Я вывожу вывожу страницу при помощи скрипта.При помощи JAVASCRIPT делаю всплывающую подсказку с дополнительным меню. Как присвоить в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru