Bonjour,
Voici mon problème:
J'ai cette erreur:
Notice: Undefined offset: 8 in C:\wamp\www\Symfony\src\LGB\BourseLivresBundle\Controller\RachatController.php line 66
J'ai lu que c'était peut etre un problème de remplissage, j'ai donc effectué des tests:
$repIdLivre=$this->get('doctrine')->getEntityManager();
$resultId=$repIdLivre->getRepository('LGBBourseLivresBundle:EleveHasLivre')->GetIdLivre($id);
//var_dump($resultId);
if(!empty($resultId[0]['livreIdlivre']))
{
$repNbLivre=$this->get('doctrine')->getEntityManager();
$resultCount=$repNbLivre->getRepository('LGBBourseLivresBundle:EleveHasLivre')->GetNbLivre($id);
$total=0;
if($resultCount!=0)
{
// Pour compteur allant de 0 jusqu'au nombre de livre par pas de 1.
for($cpt=0;$cpt!=$resultCount;$cpt++)
{
$repTabLivre=$this->get('doctrine')->getEntityManager();
$resultLivre=$repTabLivre->getRepository('LGBBourseLivresBundle:Livre')->GetTitreLivre($resultId[$cpt]['livreIdlivre']);
Je ne comprends pas pourquoi j'ai toujours cette erreur...
Je vous met mes repository:
EleveHasLivre:
class EleveHasLivreRepository extends EntityRepository
{
public function GetIdLivre($id)
{
// Requete pour trouver l'id du livre.
$q=$this->getEntityManager()->createQuery("SELECT b.livreIdlivre FROM LGBBourseLivresBundle:EleveHasLivre b WHERE b.eleveIdeleve=$id AND b.statutstatut=6");
return $resultId=$q->getResult();// On recupère le resultat de la requete
}
public function GetNbLivre($id)
{
// Requete pour compter le nombre de livre que l'élève est cencé avoir en sa possession.
$qCount=$this->getEntityManager()->createQuery("SELECT COUNT(b.livreIdlivre) FROM LGBBourseLivresBundle:EleveHasLivre b WHERE b.eleveIdeleve=$id");
return $resultCount=$qCount->getSingleScalarResult();// On récupère le nombre du COUNT
}
}
Livre:
public function GetTitreLivre($idlivre)
{
//Requete pour trouver le titre du livre.
$req=$this->getEntityManager()
->createQuery("SELECT c.titre,c.codeEan,c.prixReprise,c.discipline FROM LGBBourseLivresBundle:Livre c WHERE c.idlivre=".$idlivre);
return $resultLivre=$req->getResult();//On récupère le titre du livre en question.
}
Je n'arrive pas détecter d’où provient l’erreur. Si on suit la logique de l’erreur ça serait lorsque j'utilise:
$resultId[$cpt]['livreIdlivre']
Merci d'avance de votre aide.
YoshV