在php文件中加入两个表

时间:2018-02-27 13:50:17

标签: php mysql phpmyadmin

我有两张桌子

users (users_id,name,password)
report(id,detailes,date,user_id(fk))

我希望在table (report)中插入数据,然后将数据插入到报告中 它应该报告1属于用户1 ..etc

并且在第二步hen用户视图报告中它必须查看 name from table usersdetailes,date from report

所以我做了以下步骤

在表2中制作fk user_id

我使用以下php&查询

    <?php

class DbOperation
{
    private $conn;

    //Constructor
    function __construct()
    {
        require_once dirname(__FILE__) . '/Config.php';
        require_once dirname(__FILE__) . '/DbConnect.php';
        // opening db connection
        $db = new DbConnect();
        $this->conn = $db->connect();
    }

      //Function to add reports to the database
    public function addreports($id,$Detailes){
        $stmt = $this->conn->prepare("INSERT INTO Reports (Detailes,users_id) VALUES (?,?,?)");
        $stmt->bind_param("si",$Detailes,$users_id);
        if($stmt->execute())
            return true;
        return false;
    }

    //Function to get reports & user details from the database
    public function getreports(){
        $stmt = $this->conn->prepare("SELECT Reports.Detailes,Reports.date users.name FROM Reports JOIN Reports where Reports.id = users_id;");
        $stmt->execute();
        $result = $stmt->get_result();
        return $result;
    }

}

是我的php&amp;查询中是正确的还是在连接中有任何错误或什么? 这个文件我用来工作phpmyadmin&amp;机器人

2 个答案:

答案 0 :(得分:0)

试试这个。

SELECT
    Reports.Detailes,
    Reports.date,
    users.name
FROM
    Reports
JOIN 
    users 
ON 
   Reports.users_id = users.users_id;

答案 1 :(得分:0)

尝试此操作,您将根据用户获得报告。

   public function getUserReports($userid = 0)
    {
      $stmt = $this->conn->prepare("SELECT Reports.Detailes, Reports.date, users.name FROM Reports JOIN users ON Reports.users_id = users.users_id WHERE users.user_id = ".$userid);
      $stmt->execute();
      $result = $stmt->get_result();
      return $result;
    }