[RESOLU] cacher lew warning

Eléphant du PHP | 417 Messages

07 févr. 2013, 21:22

Bonjour,

je souhaiterai savoir comment faire pour cacher les message de warning, je travail sous easy php

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

07 févr. 2013, 22:23

bonjour,

le meilleur c'est de corriger l'erreur ;)

plus d'info si tu nous indique le message et le code ;)

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 417 Messages

07 févr. 2013, 23:43

ouui :) voici mon code c'est mon controleur picture.php
include(MODELS.'picture.php');
	$Picture = new Picture();
	//require_once(MODELS.'model.php');
	//$smarty = new Smarty();
	//session_start();
	if(Auth::islog()){
		//echo 'Yess ';	
	}
	else{	
		header('location:index.php');
	}
	
	//$User = $_SESSION['Auth']['User'];
	$User->idUsers = $_SESSION['Auth']['SessionIdUser'];
        $utilisateur = $_SESSION['Auth']['SessionUtilisateur'];
        $User->idPic = $utilisateur[0]['idPic'];
        $User->nameUsers = $utilisateur[0]['nameUsers'];
        $User->surnameUsers = $utilisateur[0]['surnameUsers'];
	//$Picture->table= 'picture, users';
	$pic = $Picture->find(array('fields'=>'pathPic',
				    'conditions'=>' idPic ='.$User->idPic.' ',
                                    'order'=>'idPic DESC'));
								
        $picture->pathPic = $pic[0]["pathPic"];

	$smarty->assign('pathPic', $picture->pathPic);
	$smarty->assign('nameUsers', $User->nameUsers);
	$smarty->assign('surnameUsers', $User->surnameUsers);
et l'erreur dans la ligne suivante :
$picture->pathPic = $pic[0]["pathPic"];

et le message d'erreur c'est toi : warning Creating default object from empty value in (la ligne en haut)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

08 févr. 2013, 00:13

le message coplet sera mieux,


Le message d'erreur indique une création d'obejt à partir d'une valeur vide.

en gros tu as le même message avec juste ce code dans un fichier
<?php
$t->hidden->text = '';
?>
en clair tu créer un objet a partir de rien.

donc, dans ton cas $picture n'existe pas ($picture->pathPic = $pic[0]["pathPic"];)

pourquoi cela ? parce que la variable c'est $Picture et pas $picture ;)


et oui sensibilité à la casse :)

essai ce code si tu veux ;)
<?php
$t->hidden->text = '';
$T->hidden = 12;
$T->hidden->text = '';
echo $T->hidden;
?>

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 417 Messages

08 févr. 2013, 00:17

ah merde si c'est juste ça le problème c'est chiant :s

le problème c'est que sur mon ordi ça fonction bien sans message d'erreur

et sur un deuxième ordi ça affiche le message d'erreur mais en même temp la variable n'est pas vide c'est a dire que quand j'affiche la variable dans fichier tpl il contient bien une valeur qui est le chemin de la photo :/

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

08 févr. 2013, 00:22

1/ parce que le niveau de rapport d'erreur n'est pas le même. et en dev autre chose que E_ALL c'est le mal :) (ne pas les afficher en prod c'est normal mais pas en dev sinon c'est la loose).

2/ comme le montre le dernier code que je t'ai filé la première affectation ce réalise quand même. Warning c'est "attention". le message t'indique donc que tu utilise un objet alors que la variable n'existe pas. Mais php est cool il crée un objet standar avec la propriété que tu veux et qui donc sera utilisable ensuite (mon code affiche 12 même s'il affiche 3 warning (et pas 4 sur le echo).



@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 417 Messages

08 févr. 2013, 00:28

ah ok :)

bon bah merci pour tt ces riches informations :)