[RESOLU] Débutant / bloqué sur bdd php

Petit nouveau ! | 2 Messages

24 janv. 2013, 18:37

Bonjour,

Je débute sur php, et je suis en train de suivre un tutoriel sur la création d'une base de données pour la création d'un blog avec ses articles et ses commentaires.
Je suis bloqué sur le fichier index.php, je n'arrive pas à faire apparaitre mes articles dans les balises h2 (ce code est placé dans le body) :
            <?php
                $articles = recup_article ();
                foreach ($articles as $article)
                {
                    echo"<h2>".$article['titre_article']."</h2>";
                }
            ?>
Voici la fonction en question qui est appelée :
<?php

mysql_connect ('localhost', 'root', 'root');
mysql_select_db ('Blog');
mysql_query ("SET NAMES UTF8");

function ajouter_article ($titre_article, $membre_article, $corps_article)
{
$query= mysql_query ("INSERT INTO articles(titre_article, membre_article, corps_article, date_article)
        VALUES ('$titre_article', '$membre_article', '$corps_article', NOW())")
                    or die();
}

function recup_articles ()
{
    $articles = array();
    $result = mysql_query ("SELECT articles.id_article,
                           articles.titre_article,
                           articles.membre_article,
                           articles.corps_article,
                           DATE_FORMAT(articles.date_article, '%d/%m/%Y %H:%i:%S') AS date_article,
                           commentaires.totales_commentaires,
                           DATE_FORMAT(commentaires.dernier_commentaire, '%d/%m/%Y %H:%i:%S') AS dernier_commentaire
                           FROM articles LEFT JOIN (
                                SELECT id_article, COUNT(id_commentaire) AS totales_commentaires,
                                MAX(date_commentaire) AS dernier_commentaire FROM commentaires GROUP BY id_article)
                                AS commentaires ON articles.id_article = commentaires.id_article"
                           ) or die(mysql_error());
  

  
    while ($row = mysql_fetch_assoc ($result))
    {
        $articles[ ]=$row;
    }
    return $articles;
    
}








?>
Je ne vois pas du tout d'où ça bloque car tout réagit bien par rapport au tuto jusqu'à cette étape et je vois bien mon article dans ma base de données...
et en revisionnant et revisionnant la video encore, je ne comprends pas du tout où est mon erreur...
J'espère que j'ai réussi à m'expliquer à peu près correctement et que j'ai mis assez de renseignements !


Merci par avance aux experts !

Eléphant du PHP | 130 Messages

24 janv. 2013, 19:08

Tu as regarder si ta variables article avait des informations ?
var_dump($articles)

ViPHP
AB
ViPHP | 5818 Messages

24 janv. 2013, 19:12

et en revisionnant et revisionnant la video encore
Ben franchement les vidéos pour apprendre le php (ou un autre langage de programmation) c'est vraiment le média le moins approprié. A fuir. Regardes des tutos classiques, c'est pas cela qui manque.

Sinon pour ton problème, fais afficher le résultat pour contrôle, genre
echo '<pre>';
print_r($articles);
echo '</pre>':

note : pour les nouveaux projets il est déconseillé d'utiliser l'extension mysql. Si possible utilises plutôt mysqli ou pdo (après t'être renseignée si ton hébergeur propose ces "nouvelles" extensions).

Petit nouveau ! | 2 Messages

24 janv. 2013, 22:48

J'AI TROUVÉ !!

c'est rien, c'est encore moi qui ai m...dé !
la fonction recup_article n'est pas la même que recup_articles !!
Grrr pourtant je me suis tué les yeux hier soir à tout vérifier !!
Tu as regarder si ta variables article avait des informations ?
Effectivement il y avait un souci, ça me retournait NULL.
Ben franchement les vidéos pour apprendre le php (ou un autre langage de programmation) c'est vraiment le média le moins approprié. A fuir. Regardes des tutos classiques, c'est pas cela qui manque.
C'est pas faux !! Je vais surement changer mon fusil d'épaule à l'avenir ! Au moins un écrit vs un écrit on peut comparer !

Merci pour votre aide en tout cas !