如果js函数内的语句不起作用

时间:2013-11-25 19:35:45

标签: javascript php

<?php
session_start();
if !(isset($_SESSION["username"])){
$logged = "0";
}
else {
$logged = "1";
}
$logged = json_encode($logged);
// var logged=$logged;
?>
<script type="text/javascript">
function create( template, vars, opts ){
    return $container.notify("create", template, vars, opts);
}

$(function(){
    // initialize widget on a container, passing in all the defaults.
    // the defaults will apply to any notification created within this
    // container, but can be overwritten on notification-by-notification
    // basis.
    $container = $("#container").notify();


// var logged == <?= $logged; ?>;

//var logged = <?php $logged; ?>;
 if (<?php $logged;?> !=1) {
// var logged = <?= $logged; ?>;
// if (logged != 1) {

    create("sticky", { title:'J~Net Site Message', text:'Welcome To J~Net Site, Enjoy Your Stay'},{ expires:false });
}

这个片段位于一个函数内并给出了空白页我已经设置了js函数上面的php中的会话检查任何想法为什么这个js不起作用?在js函数中可以访问$ logged吗?

1 个答案:

答案 0 :(得分:3)

虽然你的问题有点不完整,但我从你的评论中推断出你正试图在你的Javascript中使用PHP变量。你不能这样做。

PHP变量全部在服务器上处理,Javascript逻辑全部在客户端上处理。因此,如果你想要一个PHP值进入你的JS做内联这样的事情:

if (<?= $logged;?> != "0") {

或首先将PHP值放在js变量中:

var logged = <?= $logged; ?>;
if (logged != "0") {