我想尽可能以最简单的方式显示INNER JOIN的结果。我尝试了这个,但这不起作用:
<?php
$serveur = "localhost";
$login = "root";
$pass = "root";
try{
$conn = new PDO("mysql:host=$serveur;dbname=test2", $login, $pass);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
//On place notre requête dans une variable
$jointure_int =
"SELECT Inscrits.prenom, Commentaires.commentaire
FROM Inscrits
INNER JOIN Commentaires
ON Inscrits.id = Commentaires.id_inscrit";
//On prépare notre requête
$requete = $conn->prepare($jointure_int);
//On exécute notre requête
$resultat = $requete->execute();
echo "<pre>";
print_r($resultat);
echo "</pre>";
}
catch(PDOException $e) {
echo 'Echec : ' . $e->getMessage();
}
?>
我知道我的SQL语句运行正常(我在MySQL中测试过它)。我正在使用PDO。 print_这里唯一的东西就是数字“1”。
我想了解为什么此代码不起作用。我的变量$ resultat不是一个数组吗?我不能print_r加入的结果吗?显示此结果的最简单的战争是什么(我是否有义务获取所有内容?)?
我创建此颂歌仅用于自我培训目的,我不是故意将其应用于任何网站。
提前谢谢!
答案 0 :(得分:0)
execute()
只返回布尔值,表示存在错误。因此,print_r($resultat)
会打印true
或false
。
你的问题的答案:
显示此结果的最简单的战争是什么
使用fetchAll()
。你可以在PHP manaual