Ответ 1
По существу:
<?php
//somewhere set a value
$var = "a value";
?>
<script>
// then echo it into the js/html stream
// and assign to a js variable
spge = '<?php echo $var ;?>';
// then
alert(spge);
</script>
Возможный дубликат:
Каков наилучший способ передать переменную PHP в Javascript?
Я использую следующий код:
<script type="text/javascript">
<?php $ctnme = $_SERVER['REQUEST_URI'];
$cnme = explode("/",$ctnme);
echo $cname = $cnme[1];
?>
var spge = <?php echo $cname; ?> ;
alert(spge);
</script>
Значение не отображается. Какая ошибка?
По существу:
<?php
//somewhere set a value
$var = "a value";
?>
<script>
// then echo it into the js/html stream
// and assign to a js variable
spge = '<?php echo $var ;?>';
// then
alert(spge);
</script>
Используйте json_encode(), если это возможно (PHP 5.2 +).
См. этот (возможно, дубликат?): Передайте строку PHP в переменную JavaScript (и выйдите из новой строки)
Самый безопасный способ (с точки зрения обработки специальных символов и данных) использует json_encode()
:
var spge = <?php echo json_encode($cname); ?>;
Поместите кавычки вокруг <?php echo $cname; ?>
, чтобы убедиться, что Javascript принимает его как строку, также рассмотрите возможность экранирования.
**var spge = '';**
alert(spge);