IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Erreur Creating default object from empty value [PHP 5.5]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2014
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2014
    Messages : 89
    Points : 83
    Points
    83
    Par défaut Erreur Creating default object from empty value
    Bonjour
    Je suis devant une erreur , en développement' que je ne comprend pas d'autant qu'elle n'est jamais apparue et qui n'apparait pas sur le serveur de prod
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    	$tabsession = array();
    	foreach ($bull->lines as $linedata)					{
    		if ($linedata->type_enr == 0  and $linedata->action != 'X' and $linedata->action != 'S' )	{	
    print '<br>$linedata->id_act:'.$linedata->id_act.'</br>';			
    			$tabsession[$linedata->id_act]->id_act = $linedata->id_act;						
    			$tabsession[$linedata->id_act]->activite_label = $linedata->activite_label;	
    var_dump($tabsession);
    		}
    	} // foreach
    Le print et le var_dump serve juste à voir ce que fait le programme. Et les données sont correctement remplies.

    et voici l'affichage de l'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $linedata->id_act:459
     
    Warning: Creating default object from empty value in D:....\cglInscDolibarr.class.php on line 6
    array(1) { [459]=> object(stdClass)#123 (2) { ["id_act"]=> string(3) "459" ["activite_label"]=> string(6) "AUTRES" } }

    J'ai correctement déclarer mon tableau.
    J'ai lu , dans le manuel PHP qu'un élément d'un tableau peut être initialiser avec une clé inexistante.
    Où est l'erreur?
    Merci d'avance pour une aide
    Claude

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    Citation Envoyé par Claude30120 Voir le message
    J'ai lu , dans le manuel PHP qu'un élément d'un tableau peut être initialiser avec une clé inexistante.
    être initialisé, oui mais là avec la ligne "->id_act = ...", vous présupposez qu'il y a déjà un objet dans cette case alors qu'elle encore vide

    pour ne pas afficher l'erreur, essayez quelque chose comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $tabsession[$linedata->id_act] = new stdClass();
    $tabsession[$linedata->id_act]->id_act = $linedata->id_act;

  3. #3
    Membre régulier
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2014
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2014
    Messages : 89
    Points : 83
    Points
    83
    Par défaut
    Merci @mathieu
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $tabsession[$linedata->id_act] = new stdClass();
    $tabsession[$linedata->id_act]->id_act = $linedata->id_act;
    Ca marche, c'est l'essentiel.

    Mais je ne comprends pas pourquoi, sur la machine de production, le même code ne provoque pas cette erreur.
    Claude

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 235
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 235
    Points : 15 532
    Points
    15 532
    Par défaut
    c'est peut-être le réglage de l'autre serveur qui n'affiche pas l'erreur

    l'affichage des erreurs est géré par les valeurs de configuration suivantes :
    http://php.net/manual/fr/errorfunc.c...display-errors
    http://php.net/manual/fr/errorfunc.c...rror-reporting

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [4.1] Creating default object from empty value
    Par maxgosset dans le forum Laravel
    Réponses: 2
    Dernier message: 18/11/2015, 12h45
  2. [PHP 5.3] Strict standards: Creating default object from empty value in
    Par pape0 dans le forum Langage
    Réponses: 8
    Dernier message: 16/05/2011, 22h54
  3. Erreur de syntaxe clause FROM affichage Tous dans Listbox
    Par Lou Pitchoun dans le forum Access
    Réponses: 9
    Dernier message: 21/09/2005, 10h40
  4. Réponses: 6
    Dernier message: 15/01/2005, 23h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo