Francesco Francesco - 3 months ago 12
PHP Question

Session data working local but not on remote server

this is my code. plain and simple.

1) first.html

<body>
<?php
session_start();
...
$somearray = $Object->method($somevar);
$_SESSION["somearray"] = $somearray;
...
?>
</body>


1) second.html

<body>
<div id="map_canvas">
<script language="javascript" type="text/javascript">
<?php session_start(); ?>
some_render_function(<?php echo json_encode($_SESSION["somearray"]); ?>);
</script>
</div>
</body>


perfectly working code on localhost.

There are 2 facts that can help you guys to come up with where's the problem here.

1)If you check the source of the page second.html offline and online you can respectively see
some_render_function('all the stuff from the json')
and
some_render_function(NULL)


2)If i check my shared server folder i can see a directory called
php_session
with apparently all the correct files in it (of all the sessions opened when i tested my project, with CORRECT data in it)


Any hints?

Answer

Hello session_start ( http://php.net/manual/en/function.session-start.php ) should always be the first parameter on your page ...

Example

First Page

<?php session_start();?>
<html>
<head>
<title>First</title>
</head>
<body>
    <?php
    $somearray = $Object->method($somevar);
    $_SESSION["somearray"] = $somearray;
    ?>
</body>

</html>

Second Page

<?php session_start(); ?>
<html>
<head>
<title>Second</title>
</head>
<body>
    <?php
    var_dump($_SESSION["somearray"]);
    ?>
</body>
</html>
Comments