salut,
oui ton code retourne un tableau c'est toi qui lui dit : $data_event['description']
d'ailleurs cette ligne ne sert à rien : $data_event['description'] = $description ['description'];
=> return $description;
Je vois un gros problème dans cette fonction :
l'utilisation de variable globale. c'est généralement une mauvaise idée, passe la en paramètre, mais pas ainsi.
D'ailleurs, pour moi juste au vu du code php devrait te dire $bdd n'existe pas.
pour finir si :
- tu es certain que la requête retourne qu'une seule ligne
- que tu ne veux que la description
fait simplement return $description ['description'];
Voilà comment tu peux :
- simplifier ton code
- éviter une faille type injection SQL
- ne pas utiliser de variable globale
<?php
/**
* Récupération d'un evennement pour un jour avec une localisation.
*/
function recupEvenement($jour, $localisation, \PDO $bdd)
{
$recup_desc = $bdd->prepare('SELECT description FROM events WHERE lieu= :localisation AND jour= :jour');
$recup_desc->bindParam('localisation',$localisation);
$recup_desc->bindParam('jour',$jour);
$recup_desc->execute();
$description = $recup_desc->fetch();
$recup_desc->closeCursor();
return $description ['description'];
}
// Exemple d'utilisation
$bdd = new PDO();
echo recupEvenement('le jour', 'la localisation',$bdd);
ceci c'est qu'un exemple, qui est plus prêt de ce devrait ton code, pour ce que tu souhaites faire (avec les postulats fait au dessus).
@+