AMF PHP session_start et chargement des définitions de class
Posté : 22 avr. 2009, 08:53
Bonjour, j'utilise AMFPHP pour mes echanges flash->php, dans mes variables de session je stock mes instance de classe par exemple mysql et user.
Le probleme est que ej pense que AMFPHP fait un session_start avant d'éxécuter mes script, donc je ne peux pas lui charger les définitions de classe avant le session_start,j'ai essayé avec les fonction serialize et unserialize mais sans succes.
Ma classe Main
ma classe mysql
Le résult de AMFPHP
Quand j'execute mes script sans AMFPHP j'ai aucun probleme au niveau des chargement de mes définition de classe et mes methodes sont accéssiblent
Le probleme est que ej pense que AMFPHP fait un session_start avant d'éxécuter mes script, donc je ne peux pas lui charger les définitions de classe avant le session_start,j'ai essayé avec les fonction serialize et unserialize mais sans succes.
Ma classe Main
Code : Tout sélectionner
<?php
function __autoload($class) {
$CLASS=strtolower($class);
require_once "/".$CLASS."/".$class.".php";
session_start();
class Main
{
function Main()
{
}
function getContact()
{
$mysql=$_SESSION["mysql"];
settype($mysql,"object");
$res=$mysql->GetContact($_SESSION["myUser"]->Id);
echo "mysql ".$mysql;
}
}
?>Code : Tout sélectionner
<?php
require_once("/variable/Variable.php");
class Mysql
{
function Mysql()
{
}
function Connexion()
{
$server = "localhost";
$basededonnees = "111" ;
$utilisateur = "111" ;
$mdp = "" ;
$connection = mysql_pconnect($server,$utilisateur, $mdp)or die ("erreur de connexion");
mysql_select_db($basededonnees, $connection) ;
return $connection ;
}
function GetUser($Id)
{
$ID=new Variable($Id);
$Id=$ID->getVar();
$requete = "SELECT
id_utilisateur as Id,
nom_utilisateur as nom,
prenom_utilisateur as prenom,
email_utilisateur as email,
telephone_utilisateur as telephone,
gsm_utilisateur as gsm
FROM utilisateur
WHERE id_utilisateur = '$Id' ";
$res= mysql_query($requete,$this->Connexion() )OR die(mysql_error());
return $res;
}Code : Tout sélectionner
(Object)#0
message = "faultCode:INVALID_AMF_MESSAGE faultString:'Invalid AMF message' faultDetail:'
Fatal error: Main::getContact(): The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition "Mysql" 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:\vnd\php\services\vnd\web\Main.php on line 14
'"
name = "Error"
rootCause = (null)Code : Tout sélectionner
Code : Tout sélectionner
Code : Tout sélectionner
Code : Tout sélectionner