2017-01-13 33 views
1

我是PHP和SQL的新手。我还在学习。 所以,我在我的DB 3个表叫ps_plrps_plr_ids_nameps_plr_victms如何从两个表中获取sql数据并打印到一个?

  • ps_plr,我需要列:排名
  • ps_plr_ids_name,我需要列:
  • ps_plr_victms,我需要两列:杀死 a第二死亡
在所有这些表的

,我有plrid列,将作为一个基础。

我需要输出一个html表格: 排名,名称,杀死和死亡

我尝试下面的代码,可以打印级别和plrid,但我并不真的需要plrid在桌子上,正如我所说,只是作为一个基地,以找到我所需要的其他表格。

<?php 
$servername = "localhost"; 
$username = "root"; 
$password = "********"; 
$dbname = "psychostats3_1"; 

$mysqli = new mysqli($servername,$username,$password,$dbname); 

/* check connection */ 
if (mysqli_connect_errno()) { 
    printf("Connect failed: %s\n", mysqli_connect_error()); 
    exit(); 
} 

$query = "SELECT ps_plr.rank, ps_plr.plrid FROM ps_plr;"; 
$query .= "SELECT ps_plr_ids_name.name FROM ps_plr_ids_name plrnk, ps_plr plrst;"; 
$query .= "WHERE plrid=name"; 


//select task.id, task.name, proj.id, proj.name 
//from tasks task, projects proj 
//where proj.id=task.project_id; 

/* execute multi query */ 
if ($mysqli->multi_query($query)) { 
    do { 
     /* store first result set */ 
     if ($result = $mysqli->store_result()) { 
      while ($row = $result->fetch_row()) { 
       printf("<tr><td>" . $row[0] . "</td>"); 
       printf("<td>" . $row['2'] . "</td></tr>"); 
      } 
      $result->free(); 
     } 
     /* print divider */ 
    } while ($mysqli->next_result()); 
} 

/* close connection */ 
$mysqli->close(); 
?> 
+0

你能PLS显示两个表的表晶格结构? –

+1

在'pri_id'上加入三个表,并使用where子句作为'plrid ='name''id name是字符串。 –

回答

0
+-----------------+----------------+ 
| tutorial_author | tutorial_count | 
+-----------------+----------------+ 
| mahran   |    20 | 
| mahnaz   |   NULL | 
| Jen    |   NULL | 
| Gill   |    20 | 
| John Poul  |    1 | 
| Sanjay   |    1 | 
+-----------------+----------------+ 

让我们说这是现在执行查询的表tcount_tbl 和我的另一台tutorials_tbl

+-------------+----------------+-----------------+-----------------+ 
| tutorial_id | tutorial_title | tutorial_author | submission_date | 
+-------------+----------------+-----------------+-----------------+ 
|   1 | Learn PHP  | John Poul  | 2007-05-24  | 
|   2 | Learn MySQL | Abdul S   | 2007-05-24  | 
|   3 | JAVA Tutorial | Sanjay   | 2007-05-06  | 
+-------------+----------------+-----------------+-----------------+ 

SELECT a.tutorial_id, a.tutorial_author, b.tutorial_count 
    -> FROM tutorials_tbl a, tcount_tbl b 
    -> WHERE a.tutorial_author = b.tutorial_author; 

这是我如何加入两个表为你的情况,你都没有提到整个列名所以我只是假设,给你一个简单的例子进行联接。你可以做进一步的联接像左连接等,从3个表 Source fetching from 3 tables

0
<table align="center" border="1" width="100%"> 
<tr> 
<th>Rank</th> 
<th>Name</th> 
<th>Kills</th> 
<th>Deaths</th> 
</tr> 

    $res=mysql_query("SELECT c.* , p.*,d.* FROM ps_plr c,ps_plr_ids_name p,ps_plr_victms d WHERE c.plrid=p.plrid and c.plrid = d.plrid "); 
    while($row=mysql_fetch_array($res)) 
    { 
    ?> 
     <tr> 
     <td><p><?php echo $row[' Rank']; ?></p></td> 
     <td><p><?php echo $row['Name']; ?></p></td> 
     <td><p><?php echo $row['Kills']; ?></p></td> 
     <td><p><?php echo $row['deaths']; ?></p></td> 
     </tr> 
     <?php 
    } 
    ?> 
</table> 

尝试它希望这个作品来获取..

相关问题