2014-01-20 2 views
1

Как сохранить переменную сеанса PHP в переменной JQuery.Как хранить переменную сеанса PHP в переменной JQuery?

У меня есть один файл PHP, где я использую переменную сессии в качестве

$local_session = $_SESSION['sessionusername']; 

и что PHP падает также используя один .js файл, в котором я хочу сохранить эту $local_session, который PHP переменную в переменную JQuery

+0

И ваш JS-файл включен в верхнюю или нижнюю часть страницы? –

+0

Обратите внимание на [Как поместить php внутри javascript?] (Http://stackoverflow.com/questions/3345457/how-to-put-php-inside-javascript) или [Включить PHP в файл javascript (.js) ] (http://stackoverflow.com/questions/3241422/include-php-inside-javascript-js-file). – phemios

+0

jQuery НЕ ЯЗЫК! jQuery - это структура, написанная в javascript! –

ответ

1

это как

session_start(); 
ob_start(); 
if(!$_SESSION['sessionusername']) 
{ 
    header("location:index.php"); 
} 
else 
{ 
    include ('connection2.php'); 
    include('PHP/combo_val.php'); 
    $local_session = $_SESSION['sessionusername']; 
} 

и после этого мой HTML код начинается

0

Вы могли бы сделать что-то подобное в вашем Java Script:

var sessionVar = '<?php echo $local_session; ?>'; 

, а затем использовать эту глобальную переменную JS, где на вашей странице.

+0

Это может очень легко ломаться в зависимости от значения переменной. Правильно - 'sessionVar = ;' - не указывать явные кавычки вокруг значения. – Jon

+0

@ Axel Amthor Я сделал то же самое в коде JQuery как var lgn_usr = ; \t alert (lgn_usr); Но в предупреждении он отображается как ; – Partap

0

Вы можете написать некоторые PHP-скрипт, который возвращать данные сеанса, например

JS:

//my.js 
$.getJSON("myssesiondata.php", function(data) 
{ 
    console.log(data); 
} 

PHP:

<?php 
//mysession.php 
return json_encode($_SESSION); 
?> 
0

@ Axel Amthor

Мой JQuery код составляет

var lgn_usr = '<?php echo $_SESSION["sessionusername"] ?>'; 
alert(lgn_usr); 

и отображения

<?php echo $_SESSION["sessionusername"] ?> 

как сообщение

+0

Это не jQuery, а чистый Java Script. Ваш файл не интерпретируется сервером как PHP. Это файл '' ... js ''? Затем попробуйте переименовать его в '....php', он должен решить проблему (почти). –

+0

Я не понял вашу мысль ... Не могли бы вы рассказать о нем? – Partap

+0

Я предполагаю, что этот 'var lgn_usr = '';' Написан где-то во внешнем js-файле, включенном в php-файл. Это не будет видно с помощью PHP-интерпретатора, и, таким образом, это выражение не будет интерпретировано и будет выведено из системы, как это описано в вашем Java-скрипте. –

0

@ Axel Amthor

Мой код файла Jquery как:

$(document).ready(function() { 

    $('#submit').click(function() { 
     submit_fxn(); 
     $('#form_nuser').submit(function(e) { 
      return false; 
     }); 
}); 

function submit_fxn(){ 

    var check_flag = 0; 
    var lgn_usr = '<?php echo $local_session; ?>'; 
     alert(lgn_usr); 

}; 


}); 
0

О'кей, я получил его. $ _SESSION - это массив PHP, мы не можем установить его на стороне клиента через Javascript. Значение должно быть отправлено на сервер для хранения в массиве. Теперь я собираюсь использовать другой метод.

Смежные вопросы