Bonjour,

je m'entraine à créer un site php en mvc

j'ai une simple requête sur une table mysql

dans mon modèle j'ai ceci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public static function getAllArticle()
    {
        try {
 
            $db = static::getDB();
 
            $stmt = $db->query('SELECT * FROM article 
                                ORDER BY titre_article');
            $results = $stmt->fetchAll(PDO::FETCH_ASSOC);
            return $results;
        } catch (PDOException $e) {
            echo $e->getMessage();
        }
    }
dans mon controlleur j'ai ces deux methode
l'une qui filtre le resultat de la requete

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 public function searchInText2 ($paramArticle)
    {
        // receve result query
        $afficheArticle = Article::getAllArticle();
         var_dump([$afficheArticle]);
        $tabloArticle = [];
 
    foreach ($afficheArticle as $row) {
        $pos = strpos($row["text_article"], $paramArticle);
        if ($pos === false) {
           $tabloArticle[]=false;
        } else {
           $tabloArticle[] = $row["titre_article"]; // ICI JE VOUDRAIS PASSER PLUSIEURS COLONNES DE LA TABLE
 
 
        }
 
    }
        return $tabloArticle;
 
    }
et l'autre qui est pour rendre la vue twig

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
public function showbisAction()
        {
 
            //recupere resultat filtré  de la requet
 
            $afficheArticle = $this->searchInText2($_POST["text_article"]);          
 
            View::renderTemplate('Article/showbis.html', ['valuetablo'=>$afficheArticle]);        
 
        }
et ma vue twig qui affiche le resultat d'une recherche par un formulaire

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
{% block body %}
 
    <h1>Resultat recherche</h1>   
 
    {% for value in valuetablo %}
 
    <h2>{{ value }}</h2>    
 
        {% endfor %}    
 
    <p><a href="formarticle">Faire une recherche.</a></p>    
 
{% endblock %}
j'aimerais pourvoir exploitert dans twig un affichage selon les colonnes de la table mysql , par exemple comme ceci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
  {% for value in valuetablo %}
 
    <h4>{{ value.titre_article }}</h4>    
<p>{{ value.text_article }}</p>     
        {% endfor %}
hors si je fait ça il n'affiche rien.
aussi j'ai besoin de savoir la syntaxe pour passer des valeurs de plusieurs colonnes ici à la fin de la méthode qui filtre le résultat


$tabloArticle[] = $row["titre_article"];

merci pour toute aide