2013-06-21 41 views
0

我设置了一个名为errors的会话。当我检查它是否设置,然后调用一个函数,然后取消设置会话变量,就好像if语句被取消了一样。取消设置语句

代码:

if(isset($_SESSION['errors'])){ 
      output_errors($_SESSION['errors']); 
      unset($_SESSION['errors']); 
      } 

它应该输出错误,然后取消设置。似乎在if语句之前发生了未设置。

UPDATE:如果未设置被删除,它可以作为应该

output_errors谁想要它的人。

function output_errors($error){ 


     echo '<font color="red">' . $error . '</font>'; 
       echo ' 

     <script type="text/javascript"> 
      $(document).ready(function() { 

      var blind = document.getElementById("blind"); 
    var container = document.getElementById("login"); 
    blind.style.display = "block"; 
    container.style.display = "block"; 

      }); 
    </script> 

     '; 


    } 
+1

你启动会话,你在每一页上()'在session_start(')使用它? – Havsmonstret

+0

是的,如果我取消未设置,它可以正常工作 – user2067005

+0

稍后在脚本中是否有任何输出缓冲或重定向? – Havsmonstret

回答

0

唐一个这个,这个变量分配到另一个,并把它们作为一个参数设置为输出功能:

if(isset($_SESSION['errors'])) { 
    $errors = $_SESSION['errors']; 
    output_errors($errors); 
    unset($_SESSION['errors']); 
} 
+0

不,没有用 – user2067005