/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Fatal error: Unknown(): The script tried t~
Fra : Kim Schulz


Dato : 24-04-04 13:24

hejsa
jeg har et script som er udviklet på en linux maskine og som har kørt
der rigtigt godt i et stykke tid. Nu har webhotellet så valgt at smide
windows maskiner ind i stedet og nu får jeg pludselig denne her fejl:

Fatal error: Unknown(): The script tried to execute a method or access a
property of an incomplete object. Please ensure that the class
definition cart of the object you are trying to operate on was loaded
_before_ the session was started in
D:\Webhotel\site\www\templates\header.php on line 84



linje 84 benytter blot $SESSION["Cart"]->itemCount() som bliver oprettet
med følgende kode:

session_start();
session_register("SESSION");
if (! isset($SESSION)) {
$SESSION = array();
}
if (! isset($SESSION["cart"])) {
$SESSION["cart"] = new Cart;
}

nogen der har en ide til hvad det kan være?





--
Kim Schulz | Linux - Your Choice! Your Opinion! Your life!
Geek by nature |
schulz.dk |

 
 
Nezar Nielsen (26-04-2004)
Kommentar
Fra : Nezar Nielsen


Dato : 26-04-04 14:29

Kim Schulz wrote:

> linje 84 benytter blot $SESSION["Cart"]->itemCount() som bliver oprettet
-----------------------------------^

vs.

> $SESSION["cart"] = new Cart;
--------------------^

Måske.

Selvom du så burde få at vide at du prøvede at kalde en metode på noget
der ikke var en instans af en klasse..

--
Mvh. Nezar Nielsen
http://fez.dk

Kim Schulz (27-04-2004)
Kommentar
Fra : Kim Schulz


Dato : 27-04-04 06:55

On Mon, 26 Apr 2004 15:29:12 +0200
Nezar Nielsen <tumpen@fez.dk> wrote:
> Kim Schulz wrote:
>
> > linje 84 benytter blot $SESSION["Cart"]->itemCount() som bliver
> > oprettet
> -----------------------------------^
>
> vs.
>
> > $SESSION["cart"] = new Cart;
> --------------------^
>
> Måske.


desværre ikke.

> Selvom du så burde få at vide at du prøvede at kalde en metode på
> noget der ikke var en instans af en klasse..

netop.





--
Kim Schulz | Keen of Fundanemt? Want to share experieces with
Geek by nature | other users? join The Fundanemt User Group NOW!
schulz.dk | http://www.fundausers.org

Kim Schulz (27-04-2004)
Kommentar
Fra : Kim Schulz


Dato : 27-04-04 20:09

[snip]
nu har jeg undersøgt sagen lidt mere, og det bliver mere og mere
underligt.

først lige lidt flere informationer. Webhotellet siden er rykket over på
er hos adactive.dk og de har en noget underlig opsætning hvad php angår.
De kører f.eks. med register.globals til on, selv om det anbefales at
det skal slåes fra.
En anden underlig detalje er at den automatisk gemmer alle variabler man
opretter efter session_start() i $_SESSION.
Jeg har rodet med ini_set("session.auto_start",0), men der sker ingen
ændring hvad det angår.
som jeg ser det, så er problemet, at den aldrig kommer ind i
min if(!isset($_SESSION["cart"])){...} da den altid validerer falsk selv
om cart normalt først bliver sat inde i den if.
jeg har prøvet at omdøbe min class til cart2 for at sikre mig at det
ikke var fordi den gemte objektet i sessionen direkte ved definitionen,
men dette ændrede dog ikke på noget.

Så her står jeg så nu. stadig med en fejl og endnu mere forundring end
nogensinde. Troede ikke at man kunne lave en så buggy opsætning i php,
men at det kun var i ASP det var muligt - men ok der er jo også en win
platform nedenunder.
Nogen der har forslag til hvad jeg skal prøve nu? (ud over at foreslå
kunden et webhotel hvor php er sat normalt op).




--
Kim Schulz | Keen of Fundanemt? Want to share experieces with
Geek by nature | other users? join The Fundanemt User Group NOW!
schulz.dk | http://www.fundausers.org

Søg
Reklame
Statistik
Spørgsmål : 177518
Tips : 31968
Nyheder : 719565
Indlæg : 6408645
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste