Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果不为true,则使用jquery显示和隐藏div_Php_Jquery_Ajax - Fatal编程技术网

Php 如果不为true,则使用jquery显示和隐藏div

Php 如果不为true,则使用jquery显示和隐藏div,php,jquery,ajax,Php,Jquery,Ajax,我有一个php函数,它可以像那样验证管理员登录 if($vAdmin==1) { $_SESSION['admin']="admin"; header("location:index.php"); } else { $errMsg="Invalid Username or Password."; } 这项工作非常完美,但我想显示显示错误消息的div,所以我像这样定义了div及其隐藏的div样式 <div class="notification"

我有一个php函数,它可以像那样验证管理员登录

    if($vAdmin==1)
{
    $_SESSION['admin']="admin";
    header("location:index.php");
}
else
{
    $errMsg="Invalid Username or Password.";
}
这项工作非常完美,但我想显示显示错误消息的div,所以我像这样定义了div及其隐藏的div样式

      <div class="notification">Invalid username or password. (Type anything)</div>
无效的用户名或密码。(键入任何内容)
我已将上述功能更改为

    if($vAdmin==1)
{
    $_SESSION['admin']="admin";
    header("location:index.php");
}
else
{?>
$('div.notification').fadeIn();
setTimeout(function() {
$('div.notification').fadeOut('slow');
}, 3000);   
<?}
    ?>
if($vAdmin==1)
{
$\u会话['admin']=“admin”;
标题(“location:index.php”);
}
其他的
{?>
$('div.notification').fadeIn();
setTimeout(函数(){
$('div.notification').fadeOut('slow');
}, 3000);   
我的基本目的是当它未被验证时,只显示div并隐藏它

但它不起作用


谢谢,您需要在脚本标记中输出javascript。

将代码的其他部分更改为以下内容:

else
{ 
echo <<<EOD
<script type="text/javascript">
$(document).load(function() {
$('div.notification').fadeIn();
setTimeout(function() {
$('div.notification').fadeOut('slow');
}, 3000); 
});  
</script>
EOD;
}
else
{ 

echo看起来你是直接在文档中编写Javascript,而不是在脚本标记中。你能发布更多的代码吗?同意@ChrisFrancis,而且,这些fadeIn和fadeOut必须在你做某事后调用,对吗?在那个地方,并使用那个结构(在脚本标记中调用它们),它们将在加载时运行!@Chris是对的;您需要
echo
print
您的输出。我假设您在页面上遇到了一个php错误。@air您还可以通过将setTimeout替换为
$('div.notification').fadeIn().delay(3000)。fadeOut('slow')
the
}来最小化您的代码,3000);
应该在脚本标记中。它也应该在
$(document.load(function(){});
中。是的,我正在使用jquery,但它仍然是一样的,它没有显示div。我想可能是我正在使用这样的表单对象