AlexMarie007
Messages postés20Date d'inscriptionvendredi 15 mai 2015StatutMembreDernière intervention22 décembre 2015
-
Modifié par jordane45 le 22/12/2015 à 12:29
AlexMarie007
Messages postés20Date d'inscriptionvendredi 15 mai 2015StatutMembreDernière intervention22 décembre 2015
-
22 déc. 2015 à 14:23
Bonjour,
Je voudrais une aide de votre part.je ne comprends plus rien dans ce code car il fonctionnait bien quand soudain, il a arrêté d'afficher la réponse alors voici le code si vous pouvez apporter votre part.
message d'erreur:
Fatal error: Call to a member function getdesignation() on a non-object in C:\wamp\www\cnps\models\liste_business.php on line 84
Call Stack
<?php
// classe de mon objet
class Statistique{
private $designation;
private $nbaffaire;
private $annee;
//constructeurs
function __construct($designation,$nbaffaire,$annee){
$this->designation=$designation;
$this->nbaffaire=$nbaffaire;
$this->annee=$annee;
}
// ******** Setters pemettent d'assigner des valeurs aux attributs *******//
public function setdesignation($designation){
$this->designation=$designation;
}
// ******* getters pemettent de recuperer les valeurs des attributs *******//
public function getdesignation(){
return $this->designation;
}
public function setnbaffaire($nbaffaire){
$this->nbaffaire=$nbaffaire;
}
public function getnbaffaire(){
return $this->nbaffaire;
}
public function getannee(){
return $this->annee;
}
}
$bdd = new PDO('mysql:host=localhost;dbname=gestionalertes','root','****');
$sql = 'SELECT designation,nbaffaire,annee FROM taches ORDER BY annee'; // je récupere dans ma base de données
$req = $bdd->query($sql);
while($donnees = $req->fetch() > 0)
{ // je met les infos dans un tableau
$designation = $donnees['designation'];
$nbaffaire = $donnees['nbaffaire'];
$annee = $donnees['annee'];
$busi[]='';
$art = new Statistique($designation, $nbaffaire,$annee);
$busi[] = $art;
}
?>
<div style="background:#0066FF; bgcolor:#FFC042; color:#99FFCC; border-radius:15px 15px 0 0 ; border: 1px solid; width: 500px;">
<span style="text-decoration: blink">
<strong><em>LISTE BUSINESS</em></strong>
</span>
</div>
<div style="bgcolor:#FFC042; border: 0.7px solid; width: 500px;">
<table border="0" width="100%" align="left">
<tr bgcolor="#4AE92B">
<th>DESIGNATION</th>
<th>NBRE AFFAIRE</th>
<th>ANNEE</th>
</tr>
<?php
foreach($busi as $stat)
{ ?>
<tr>
<td><?php echo $stat->getdesignation().'<br/>';?></td>
<td><?php echo $stat->getnbaffaire().'<br/>';?></td>
<td><?php echo $stat->getannee().'<br/>';?></td>
<tr>
<?php
}
?>
</table>
</div>
Aidez moi
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique). Explications disponibles ici : ICI
jordane45
Messages postés38112Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention29 mars 2024344 22 déc. 2015 à 13:01
Bonjour,
C'est à cause de cette ligne :
$busi[]='';
.... tu l'initialises avec un string '' .... ce n'est donc pas un objet... et il n'existe donc aucune fonction qui y soit rattachée....
Modifies ton code ainsi:
$sql = "SELECT designation,nbaffaire,annee
FROM taches
ORDER BY annee"; // je récupere dans ma base de données
$req = $bdd->query($sql);
$busi=array(); //initialisation de la variable busi
while($donnees = $req->fetch() > 0) { // je met les infos dans un tableau
$designation = $donnees['designation'];
$nbaffaire = $donnees['nbaffaire'];
$annee = $donnees['annee'];
$art = new Statistique($designation, $nbaffaire,$annee);
$busi[] = $art;
}
//constructeurs function __construct($designation,$nbaffaire,$annee){ $this->designation=$designation; $this->nbaffaire=$nbaffaire; $this->annee=$annee; }
// ******** Setters pemettent d'assigner des valeurs aux attributs *******// public function setdesignation($designation){ $this->designation=$designation; }
// ******* getters pemettent de recuperer les valeurs des attributs *******// public function getdesignation(){
return $this->designation; }
public function setnbaffaire($nbaffaire){
$this->nbaffaire=$nbaffaire; }
public function getnbaffaire(){
return $this->nbaffaire; }
public function getannee(){
return $this->annee; } }
$bdd = new PDO('mysql:host=localhost;dbname=gestionalertes','root','Geth@lex/007');
/* $sql = 'SELECT designation,nbaffaire,annee FROM taches ORDER BY annee'; // je récupere dans ma base de données
$req = $bdd->query($sql);
$busi = array(); while($donnees = $req->fetch() > 0) { // je met les infos dans un tableau $designation = $donnees['designation']; $nbaffaire = $donnees['nbaffaire']; $annee = $donnees['annee'];
$art = new Statistique($designation, $nbaffaire,$annee); $busi= $art; } */
$sql = "SELECT designation,nbaffaire,annee FROM taches ORDER BY annee"; // je récupere dans ma base de données
$req = $bdd->query($sql);
$busi=array(); //initialisation de la variable busi while($donnees = $req->fetch() > 0) { // je met les infos dans un tableau $designation = $donnees['designation']; $nbaffaire = $donnees['nbaffaire']; $annee = $donnees['annee'];
$art = new Statistique($designation, $nbaffaire,$annee); $busi[] = $art; }