Avatar billede frederikschack Nybegynder
28. december 2008 - 15:32 Der er 3 kommentarer og
1 løsning

overførsel af objekter

Hej,

Jeg ville gerne kunne overføre objekter mellem sider. Jeg har læst at man kan bruge sessions, som automatisk laver serialize/unserialize, men kan ikke få det til at virke.

Jeg har en index.php:
<?php
session_start();
$_SESSION['configPath'] = $_SERVER['DOCUMENT_ROOT'] . "/side/bin/config/";
include $_SESSION['configPath'] . "config.php";
$_SESSION['configuration'] = new Configuration();
$conf = $_SESSION['configuration'];
header("Location: side.php");
?>

Og en side.php
<?php
session_start();
require $_SESSION['configPath'] . "config.php";
$c = new Configuration();

printf($c->readConfig("Webserver"));

$_SESSION['configuration']->readConfig("Webserver");

//$conf = $_SESSION['configuration'];
//$conf->readConfig("Webserver");

//$conf = (Configuration) $_SESSION['configuration'];
//$conf->readConfig("Webserver");
?>

Når jeg kører index.php får jeg følgende:

127.0.0.1
Fatal error: main() [<a href='function.main'>function.main</a>]: The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition &quot;Configuration&quot; of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in C:\Web\side\side.php on line 8

De to udkommenterede metoder virker heller ikke.
Avatar billede erikjacobsen Ekspert
28. december 2008 - 20:04 #1
Det skal umiddelbart virke, som du skriver det. Men vil du ikke lige prøve at sætte en simpel sessions-variabel på index.php:

  $_SESSION['fusk']=8;

og udskrive den på side.php:

  print "Fusk = ".$_SESSION['fusk'];

og fortælle hvad der sker?
Avatar billede erikjacobsen Ekspert
28. december 2008 - 20:12 #2
Og så er fejlen vist egentlig bare at du kalder session_start før du laver en include. Byt om på linierne i side.php:

session_start();
require $_SESSION['configPath'] . "config.php";
Avatar billede frederikschack Nybegynder
28. december 2008 - 23:09 #3
Hej Erik,

Den skriver fint nok at fusk = 8...

Jeg ville meget gerne bruge sessions til at kalde includes med.
Avatar billede frederikschack Nybegynder
10. august 2010 - 14:47 #4
Fandt aldrig en løsning
Lukket
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester