本帖最后由 tantanba 于 2014-05-15 17:25:52 编辑

解决方案 »

  1.   

    $jms->headers['x-call']
    $jms->headers['x-form-call']如果出现这两个键,那么你的处理就不对了
      

  2.   


    这两个headers变量要如何修改呢我前台登录代码是
    <form action="/index.php/user/logined" method="post" onajax="userBeforeLogin" enter="true" call="userLogin" target="ajax">
    <div class="tr"><span>用户名:</span><input class="inp-1 img-login" name="username" onBlur="this.value=ignoreSpaces(this.value);" /></div>
    <div class="tr"><span>密&nbsp;&nbsp;码:</span><input class="inp-1 img-login" name="password" type="password" /></div>
    <div class="tr"><span>验证码:</span><span class="yzmNum"><img width="65" height="24" border="0" align="absmiddle" src="/index.php/user/vcode/';echo $this->time;echo '" title="看不清楚,换一张图片" onclick="this.src=\'/index.php/user/vcode/\'+(new Date()).getTime()"/><input class="inp-2 img-login" name="vcode" maxlength="4" /></span></div>
    <div class="login-btn img-login" onclick="$(this).closest(\'form\').submit()"></div>
    <div style="display:none;"><input type="submit" value=""/></div>
    </form>
      

  3.   

    你先 print_r($_SERVER); 看看
      

  4.   

    我随便在index.php里面任意一行加print_r($_SERVER); 浏览器输出如下
    Array ( [PATH] => C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files\nodejs\;C:\Users\qiu\AppData\Roaming\npm [SYSTEMROOT] => C:\windows [COMSPEC] => C:\windows\system32\cmd.exe [PATHEXT] => .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC [WINDIR] => C:\windows [PHPRC] => D:/phpStudy/php53n [_FCGI_SHUTDOWN_EVENT_] => 1880 [FCGI_ROLE] => RESPONDER [HTTP_ACCEPT] => */* [HTTP_ACCEPT_LANGUAGE] => zh-Hans-CN,zh-Hans;q=0.5 [HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/6.0; Touch; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; MALNJS) [HTTP_ACCEPT_ENCODING] => gzip, deflate [HTTP_HOST] => localhost [HTTP_DNT] => 1 [HTTP_CONNECTION] => close [HTTP_COOKIE] => LYEE_2132_saltkey=EZ3xzsds; LYEE_2132_lastvisit=1399524676; LYEE_2132_ulastactivity=42ecdh8%2FGPyhwh6Cw%2FadmNWyeTA6A0c72vx5axIo0uxCfwD5RBvT; LYEE_2132_lastcheckfeed=1%7C1399987683; LYEE_2132_nofavfid=1; PHPSESSID=7m2q1ec3lg9gao3gs76h7bkid1 [SystemRoot] => C:\windows [SERVER_SIGNATURE] => [SERVER_SOFTWARE] => Apache/2.4.7 (Win32) OpenSSL/1.0.1e mod_fcgid/2.3.9 [SERVER_NAME] => localhost [SERVER_ADDR] => ::1 [SERVER_PORT] => 80 [REMOTE_ADDR] => ::1 [DOCUMENT_ROOT] => D:/phpStudy/WWW [REQUEST_SCHEME] => http [CONTEXT_PREFIX] => [CONTEXT_DOCUMENT_ROOT] => D:/phpStudy/WWW [SERVER_ADMIN] => [email protected] [SCRIPT_FILENAME] => D:/phpStudy/WWW/index.php [REMOTE_PORT] => 50410 [GATEWAY_INTERFACE] => CGI/1.1 [SERVER_PROTOCOL] => HTTP/1.1 [REQUEST_METHOD] => GET [QUERY_STRING] => [REQUEST_URI] => /index.php/user/login [SCRIPT_NAME] => /index.php [PATH_INFO] => /user/login [PATH_TRANSLATED] => D:\phpStudy\WWW\user\login [PHP_SELF] => /index.php/user/login [REQUEST_TIME] => 1400148072 )  
      
     
      
       
      

  5.   


    我把超全局变量打印出来的格式整理一下,你这样子会看得到更清楚一些Array ( [PATH] => C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files (x86)\Intel\OpenCL SDK\2.0\bin\x64;C:\Program Files\nodejs\;C:\Users\qiu\AppData\Roaming\npm [SYSTEMROOT] => C:\windows 
    [COMSPEC] => C:\windows\system32\cmd.exe [PATHEXT] => .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC [WINDIR] => C:\windows 
    [PHPRC] => D:/phpStudy/php53n 
    [_FCGI_SHUTDOWN_EVENT_] => 1880 
    [FCGI_ROLE] => RESPONDER 
    [HTTP_ACCEPT] => */* 
    [HTTP_ACCEPT_LANGUAGE] => zh-Hans-CN,zh-Hans;q=0.5 
    [HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/6.0; Touch; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; MALNJS)
     [HTTP_ACCEPT_ENCODING] => gzip, deflate 
     [HTTP_HOST] => localhost
     [HTTP_DNT] => 1 
     [HTTP_CONNECTION] => close 
     [HTTP_COOKIE] => LYEE_2132_saltkey=EZ3xzsds; LYEE_2132_lastvisit=1399524676; LYEE_2132_ulastactivity=42ecdh8%2FGPyhwh6Cw%2FadmNWyeTA6A0c72vx5axIo0uxCfwD5RBvT; LYEE_2132_lastcheckfeed=1%7C1399987683; LYEE_2132_nofavfid=1; PHPSESSID=7m2q1ec3lg9gao3gs76h7bkid1
     [SystemRoot] => C:\windows 
     [SERVER_SIGNATURE] =>
     [SERVER_SOFTWARE] => Apache/2.4.7 (Win32) OpenSSL/1.0.1e mod_fcgid/2.3.9 
     [SERVER_NAME] => localhost 
     [SERVER_ADDR] => ::1 
     [SERVER_PORT] => 80 
     [REMOTE_ADDR] => ::1
     [DOCUMENT_ROOT] => D:/phpStudy/WWW 
     [REQUEST_SCHEME] => http 
     [CONTEXT_PREFIX] => 
     [CONTEXT_DOCUMENT_ROOT] => D:/phpStudy/WWW 
     [SERVER_ADMIN] => [email protected]
     [SCRIPT_FILENAME] => D:/phpStudy/WWW/index.php 
     [REMOTE_PORT] => 50410
     [GATEWAY_INTERFACE] => CGI/1.1 
     [SERVER_PROTOCOL] => HTTP/1.1 
     [REQUEST_METHOD] => GET 
     [QUERY_STRING] =>
     [REQUEST_URI] => /index.php/user/login 
     [SCRIPT_NAME] => /index.php
     [PATH_INFO] => /user/login 
     [PATH_TRANSLATED] => D:\phpStudy\WWW\user\login 
     [PHP_SELF] => /index.php/user/login 
     [REQUEST_TIME] => 1400148072 )  
      

  6.   


    很困惑,是要放在index.php,还是那页login.php里面??/
      

  7.   

    哪里要用 getallheaders 函数,就在哪里
      

  8.   


    我把代码 改成这样子输出打印一下function getallheaders()   
        {  $headers = array(); 
           foreach ($_SERVER as $name => $value)   
           {  
               if (substr($name, 0, 5) == 'HTTP_')   
               {  
                   $headers[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value;  
               }  
           }  
           return $headers; 
       print_r($headers);
        }  
    $tt=getallheaders();
    print_r($tt);
    =====================浏览器显示,这样子有算是取到值了吗???  Array ( 
      [Accept] => */*
      [Accept-Language] => zh-Hans-CN,zh-Hans;q=0.5 
      [User-Agent] => Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/6.0; Touch; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; MALNJS)
      [Accept-Encoding] => gzip, deflate 
      [Host] => localhost 
      [Dnt] => 1 
      [Connection] => close 
      [Cookie] => LYEE_2132_saltkey=EZ3xzsds; LYEE_2132_lastvisit=1399524676; LYEE_2132_ulastactivity=42ecdh8%2FGPyhwh6Cw%2FadmNWyeTA6A0c72vx5axIo0uxCfwD5RBvT; LYEE_2132_lastcheckfeed=1%7C1399987683; LYEE_2132_nofavfid=1; PHPSESSID=c7q2sbqb6tn6bkosaiuqu6fb26 
      )  
       
      

  9.   

    //重点是这一句,如果状态是正常的话,要显示keep-alive
      [Connection] => close 
    ============  Array ( 
      [Accept] => */*
      [Accept-Language] => zh-Hans-CN,zh-Hans;q=0.5 
      [User-Agent] => Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/6.0; Touch; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729; Tablet PC 2.0; MALNJS)
      [Accept-Encoding] => gzip, deflate 
      [Host] => localhost 
      [Dnt] => 1 
    //重点是这一句,如果状态是正常的话,要显示keep-alive
      [Connection] => close 
      [Cookie] => LYEE_2132_saltkey=EZ3xzsds; LYEE_2132_lastvisit=1399524676; LYEE_2132_ulastactivity=42ecdh8%2FGPyhwh6Cw%2FadmNWyeTA6A0c72vx5axIo0uxCfwD5RBvT; LYEE_2132_lastcheckfeed=1%7C1399987683; LYEE_2132_nofavfid=1; PHPSESSID=c7q2sbqb6tn6bkosaiuqu6fb26 
      )