
29.04.2015, 23:47
|
Профессор
|
|
Регистрация: 21.03.2014
Сообщений: 173
|
|
Как присвоить переменной js значение переменной php.
Здравствуйте.
Хочу отобразить значение полей таблицы в графике (canvas) с помощью ajax. График уже есть и он работает. Но, с присваиванием результата запроса с базы данных js-переменной, возникли сложности.
Я всё упрощала задачу и доупрощалась до присваивания js-переменной значения php-переменной. Далее следует код, который у меня не работает.
var data = <?php echo json_encode($correct_ansvers_amount); ?>;//Страница загружается, но ничего не делает (ajax не работает и данный код тоже, без этого кода всё работает).
alert(data);
Хотелось бы узнать, как правильно присвоить переменной js значение из php на примере helloWorld.html.
|
|

30.04.2015, 01:48
|
Интересующийся
|
|
Регистрация: 11.12.2014
Сообщений: 10
|
|
Сообщение от Blondinka
|
Здравствуйте.
Хочу отобразить значение полей таблицы в графике (canvas) с помощью ajax. График уже есть и он работает. Но, с присваиванием результата запроса с базы данных js-переменной, возникли сложности.
Я всё упрощала задачу и доупрощалась до присваивания js-переменной значения php-переменной. Далее следует код, который у меня не работает.
var data = <?php echo json_encode($correct_ansvers_amount); ?>;//Страница загружается, но ничего не делает (ajax не работает и данный код тоже, без этого кода всё работает).
alert(data);
Хотелось бы узнать, как правильно присвоить переменной js значение из php на примере helloWorld.html.
|
Не чего не понял. Вы хотите присвоить что то от сервера (ответ в JSON как я понимаю) ?
если так то ... Сначала PHP запрос
// простой ответ json от сервера
header("content-type:application/json");
echo '{"Error":null,"ErrorCode":0,"Success":true,"Value":{"login":"ADMIN","id":"1"}}}';
$.ajax({
type: 'POST',
dataType: 'json',
data: 'login=ADMIN&id=1',
url: 'http://localhost/ajax.php',
success: function (result) {
try {
var id = result['Value']['id'];
var login = result['Value']['login'];
} catch (e) {
alert('Error! Line: ' + e.lineNo + '; Error: ' + e.message);
}
},
error: function () {
alert('Ошибка отправки запроса');
}
});
Последний раз редактировалось Woogy, 30.04.2015 в 01:53.
|
|

30.04.2015, 09:07
|
 |
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,278
|
|
Сообщение от Blondinka
|
var data = <?php echo json_encode($correct_ansvers_amount); ?>;//Страница загружается, но ничего не делает (ajax не работает и данный код тоже, без этого кода всё работает).
alert(data);
|
Не хотел тебя расстраивать... Но никакого ajax тут нет и в помине. 
|
|

30.04.2015, 11:48
|
Профессор
|
|
Регистрация: 21.03.2014
Сообщений: 173
|
|
ksa, я вставила этот код в свой ajax-код, но он не работает. Без этих двух строк всё работает. Отдельно работает только другой код (который ajax). Пришла к выводу, что проблема только в том, что я опубликовала. Я не знаю о большинстве подводных камней в JS, поэтому упомянула, что собираюсь это использовать с технологией ajax.
|
|

30.04.2015, 15:01
|
Интересующийся
|
|
Регистрация: 11.12.2014
Сообщений: 10
|
|
Прошу точнее изложить свои мысли. У вас отдельный файл JS и вы хотите туда передать переменную?
|
|

30.04.2015, 15:19
|
Профессор
|
|
Регистрация: 21.03.2014
Сообщений: 173
|
|
Woogy, хотелось бы узнать, как правильно присвоить переменной js значение из php на примере helloWorld.html.
Например:
<!DOCTYPE html>
<html>
<body>
<button onclick="alert('hi');alertPhpVariable();">Try it</button>
<?php
$php_var = 5;
?>
<script>
alertPhpVariable(){
js_var = <?php $php_var;?>;
alert(js_var);
}
</script>
</body>
</html>
Хочу получить такой же код, только работающий.
|
|

30.04.2015, 15:40
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
<script>
alertPhpVariable(){
js_var = <?=$php_var?>;
alert(js_var);
}
</script>
|
|

30.04.2015, 16:00
|
Профессор
|
|
Регистрация: 21.03.2014
Сообщений: 173
|
|
laimas, добавила к остальному коду. Не работает.
<!DOCTYPE html>
<html>
<body>
<button onclick="alertPhpVariable();">Try it</button>
<?php
$php_var = 5;
?>
<script>
alertPhpVariable(){
js_var = <?=$php_var?>;
alert(js_var);
}
</script>
</body>
</html>
|
|

30.04.2015, 16:21
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
js_var = <?php $php_var;?>; - это не вывод РНР переменной в браузер,
а вывод будет либо используя котроткий php тег:
js_var = <?=$php_var;?>;
или, если он не разрешен (при старой версии РНР), то так:
js_var = <?php echo $php_var;?>;
Результирущюй HTML-код в отладчике смотрите (или просто исходный код страницы), должно быть значение у переменной.
|
|

30.04.2015, 16:37
|
Профессор
|
|
Регистрация: 21.03.2014
Сообщений: 173
|
|
laimas,
js_var = <?=$php_var;?>;// это присваивание js-переменной значения php-переменной.
А alert, я использую, для проверки, на сколько это присваивание удалось. На данном этапе, у меня ничего не работает. 
|
|
|
|