SitePoint Sponsor

User Tag List

Results 1 to 5 of 5
  1. #1
    SitePoint Enthusiast
    Join Date
    Jan 2010
    Posts
    67
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    php sessions destroyed instantly

    it seems that sessions work when i set them for an instant, and then they are destroyed
    here is my phpinfo page, can anyone see the problem?
    i dont have access to the phpini file
    can u check my cookie settings and tell me if i can use those instead?
    http://cksgrill.net/phpinfo.php
    here is the top part of the code which is the relevent part
    Code:
    <!DOCTYPE html>
    <script src="/javascript/header.js"></script>
    <?
    
    session_start();
    ob_start();
    session_set_cookie_params(3000); 
    ini_set('session.gc_maxlifetime', 6 * 60 * 60);
    $session_expiration = time() + 3600 * 24 * 2;
    if((($_POST['name'])and($_POST['password']))or(($_POST['name']!="")and($_POST['password']!="")))
    {
    	$_SESSION['name']=$_POST['name'];
    	$_SESSION['password']=$_POST['password'];
    	echo $_SESSION['name'];
    	echo $_POST['name'];
    	echo $_SESSION['password'];
    	echo $_POST['password'];
    }
    
    
    // redifine variables for different server
    require_once "mysqlconfig.php";  
    require_once "textprep.php";  
    
    // connect to database
    global $connection;
    $connection = mysql_connect(DB_SERVER,DB_USER,DB_PASS); 
    if (!$connection)
    {
    	die("Database connection failed: " . mysql_error());
    }
    
    // select database
    $db_select = mysql_select_db(DB_NAME,$connection);
    if (!$db_select)
    {
    	die("Database selection failed: " . mysql_error());
    }
    
    //check if logged in
    $result = mysql_query("SELECT * FROM admin");
    if (!$result)
    {
    	die("Database query failed: " . mysql_error());
    }
    
    // get table names as mysql feedback
    $i=0;
    while ($row = mysql_fetch_array($result)) 
    {
    	$name[$i]=$row['name'];
    	$password[$i]=$row['password'];
    	$rank[$i]=$row['rank'];
    	
    	//echo "\$name[$i]=".$row['name'];
    	//echo "\$password[$i]=".$row['password'];
    	//echo "\$rank[$i]=".$row['rank'];
    	
    	$i++;
    }
    
    //check if logged in
    $log=false;
    for($j=0;$j<$i;$j++)
    {
    	//echo "<p>(".$name[$j]."==".$_SESSION['name'].")and(".$password[$j]."==".$_SESSION['password'].")</p>";
    	if(($name[$j]==$_SESSION['name'])and($password[$j]==$_SESSION['password']))
    	{
    		$log=true;
    		echo logged." ".$log;
    	}
    }
    if($log==true)
    {

  2. #2
    SitePoint Mentor bronze trophy
    John_Betong's Avatar
    Join Date
    Aug 2005
    Location
    City of Angels
    Posts
    1,819
    Mentioned
    73 Post(s)
    Tagged
    6 Thread(s)
    Try moving the JavaScript below session_start()

  3. #3
    SitePoint Enthusiast
    Join Date
    Jan 2010
    Posts
    67
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    the javascript is only an html paste of a header. there is no php or session variables in the javascript

  4. #4
    SitePoint Enthusiast
    Join Date
    Jan 2010
    Posts
    67
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    im 99.99% sure the problem is with php.ini or my host, i just need ur help to know what to ask him to change. please check my php.ini http://cksgrill.net/phpinfo.php

  5. #5
    SitePoint Wizard lorenw's Avatar
    Join Date
    Feb 2005
    Location
    was rainy Oregon now sunny Florida
    Posts
    1,099
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    session_start(); should be on the very first line.
    Error reporting would tell you that session cannot be started, output already sent at line 1.
    What I lack in acuracy I make up for in misteaks


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •