Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.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 $\未在远程服务器上设置会话_Php_Session - Fatal编程技术网

Php $\未在远程服务器上设置会话

Php $\未在远程服务器上设置会话,php,session,Php,Session,我正在用php编写一个登录页面,设置$u会话时遇到问题。我是php新手,不知道自己做错了什么。该脚本在本地主机上运行良好,但当我将其推送到远程服务器时,它就不起作用了。可能是php.ini文件吗?谢谢你的帮助 <? start_session(); $dbc = mysqli_connect($host,$name,$dpassword,$database) or die('Error can not connect to co

我正在用php编写一个登录页面,设置$u会话时遇到问题。我是php新手,不知道自己做错了什么。该脚本在本地主机上运行良好,但当我将其推送到远程服务器时,它就不起作用了。可能是php.ini文件吗?谢谢你的帮助

         <?
         start_session();

            $dbc = mysqli_connect($host,$name,$dpassword,$database) or die('Error can not connect to corp database');
                $q="SELECT * FROM corporate WHERE (email='$theemail' AND password='$md5pass' AND activated = '1')";

                $result= mysqli_query($dbc,$q) or die("Error: ".mysqli_error($dbc));;

                if(@mysqli_num_rows($result) == 1)
                {
                    //get the entire row
                    $getrow = mysqli_fetch_array($result);
                    //also tired 
                    //$_SESSION = mysqli_fetch_array($result, MYSQLI_ASSOC);

                    //set session, but does not get set!
                    $_SESSION['lname'] = $getrow['lname'];
                    $_SESSION['fname'] = $getrow['fname'];


                        //set cookie for an hour
                        setcookie("lname", $getrow['lname'], time()+60*60,"/","http://www.limozoor.com",1);
                        setcookie("fname",$getrow['fname'],time()+60*60,"/","http://www.limozoor.com",1);

                        //if no header is not sent, send it.
                        if(!headers_sent())
                        {
                            header('Location: http://www.limozoor.com/login/homepage.php'); 
                            exit();
                        }//inner

                }//outter
         }
        ?>

你不应该使用:

session_start();
不是

如果未正确调用该函数,浏览器将不会实际存储任何会话数据


这会是您的会话开始吗


您有start_session(),但我认为应该是session_start()

尝试更改这些代码段

 start_session();
进入

进入


这可能只是疏忽,但代码中的函数不正确:它不应该是
start\u session()
,而应该是
session\u start()

除此之外,我在php.ini设置中没有看到任何可能导致会话无法工作的内容。 您应该将这些行放在php.ini中
error\u reporting=E|u ALL | E_STRICT
display\u errors=On
。它将允许您查看尽可能多的错误消息


最后,您可以检查apache错误日志,看看是否可以找到任何有意义的错误消息。默认情况下,在Linux上,它将位于/var/log/apache2/error.log或/var/log/httpd/error.log中。是否设置了cookie?重定向是否按预期进行?cookies已设置,我被重定向回index.php,这意味着会话中没有存储数据。另一个可能的原因(但极不可能)是apache用户没有写入/tmpSorry的权限,我使用了Session_start(),我只是编写了它,没有从脚本中粘贴它。这不是问题!。
start_session();
 start_session();
session_start();
$_SESSION['lname'] = $getrow['lname'];
$_SESSION['fname'] = $getrow['fname'];
if($getrow['lname']!='' && $getrow['fname']!=''){
   $_SESSION['lname'] = $getrow['lname'];
   $_SESSION['fname'] = $getrow['fname'];
   }