php - MySQL Join 和 Echo 结果

标签 php mysql join mysqli echo

我试图做一个简单的 JOIN,当尝试加载页面时它是空白的。当我输入查询时。我试图让它打印查询。我知道如何打印结果但是在打印连接时遇到了问题。

SELECT user.name, course.name
    FROM `user`
    INNER JOIN `course` on user.course = course.id;

在我在 PHPmyAdmin 上的 SQL 中它返回

NAME        Course
Alice       HTML5
Bob         HTML5
Caroline    CSS3

<?php
$con=mysqli_connect("URL,"USERNAME","PASS","DB");
// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$result = mysqli_query($con,"SELECT user.name, course.name
FROM `user`
INNER JOIN `course` on user.course = course.id;");

while($row = mysqli_fetch_array($result)) {
  echo $row['user.name'] . " " . $row['course.name'];
  echo "<br>";
}

mysqli_close($con);
?>

感谢您的任何见解...

最佳答案

你不需要使用 $row['user.name'] 它应该是 $row['name'] 但因为你有两列相同name as name 所以你必须改变将它们分配给其他变量。

[提示]:检查新查询和 while 循环中的 echo。 请进行以下更改:

 <?php
    $con=mysqli_connect("HOST","USERNAME","PASS","DB");
    // Check connection
    if (mysqli_connect_errno()) {
        echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }

    $result = mysqli_query($con,"SELECT user.name as username, course.name as coursename
    FROM `user`
    INNER JOIN `course` on user.course = course.id;");

    while($row = mysqli_fetch_array($result)) {
        echo $row['username'] . " " . $row['coursename'];
        echo "<br>";
    }

    mysqli_close($con);
?>

关于php - MySQL Join 和 Echo 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25850741/

相关文章:

nhibernate - 左连接、非重复和使用 QueryOver 进行分页

php - 转换为 3 位十六进制颜色代码

php - 我怎样才能从 php 制作这个 json 格式?

php - 处理多个主机上的 PHP 站点 session 的最佳方法是什么?

php - 我如何在 cakePHP 中编写带有右连接的子查询?

php - MYSQL PHP 一次查询跳转多张表

java - private void function(Integer[] a, String str = "") 就像在 PHP 中一样

mysql - 如何使用 MySQL 变量赋值来迭代行?

连接表和多个值的 SQL 查询

SQL 查询计数 - 连接两个表并获得一个计数,即使它是 0