probleme selection dans base de donnee

Petit nouveau ! | 2 Messages

14 avr. 2019, 13:35

bonjour je suis debutant en php. j'ai crée une fonction pour sélectionner des infos dans ma base de donnée

function get_commentaires_articles(){
global $db;
$req = $db->query("SELECT * FROM users,commentaires WHERE users.email = commentaires.email_user AND id_article ='{$_GET['reference']}'");
$result = array();

while ($rows = $req->fetchObject()) {
$results[]= $rows;
}
return $results;

}
Et dans une autres je les affiche en faisant
<?php
foreach (get_commentaires_articles() as $commentaires_articles) {
if ($commentaires_articles) {
?>
<div class="user"> <?= $commentaires_articles -> nom ;?></div>
<div class="alert alert-primary msg" role="alert">
<?= $commentaires_articles -> message;?>
</div>
<?php
}
}
?>

mais lorsqu'il ne retrouve rien dans la base de donnée il affiche
Notice: Undefined variable: results in C:\wamp64\www\mk-formation\functions\DetailsArticles.func.php on line 41

et
Warning: Invalid argument supplied for foreach() in C:\wamp64\www\mk-formation\pages\DetailsArticles.php on line 56

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

14 avr. 2019, 15:22

Relis bien les messages d'erreur et essaye de comprendre pourquoi PHP t'indique cela.

Ensuite ça sera à toi de tester tes variables pour gérer correctement le cas où tu n'as pas de résultats à afficher.
Quand tout le reste a échoué, lisez le mode d'emploi...

Petit nouveau ! | 2 Messages

15 avr. 2019, 15:38

ok merci je verifie