2013-12-08 3 views
0

저는 MySQL에서 두 개의 다른 테이블을 가지고 있는데, PHP에서 테이블을 비교하고 싶습니다. 이메일과 계정의 이름 행을 입력 한 다음 이메일에 이름을 표시합니다.
이 내가 무엇을 가지고 있습니다 :다른 테이블의 행을 비교하십시오.

<?php 
require('./config.php'); 
mysql_connect($host, $user, $pass) or 
die("Could not connect: " . mysql_error()); 
mysql_select_db($db); 

$result = mysql_query("SELECT name FROM accounts"); 
$result2 = mysql_query("SELECT email, name FROM emails"); 
$row = mysql_fetch_array($result, MYSQL_NUM); 
$row2 = mysql_fetch_array($result2, MYSQL_NUM); 
{ 
    echo ('<bold>Name Email</bold><br>'); 
    echo ('<bold>'. $row[0] . $row2[0] . '</bold><BR>'); 
    } 


mysql_free_result($result); 
?> 
+0

그래서 당신이 직면하고 다음 문제가 무엇? 2 개의 테이블 사이에 어떤 관계가 있습니까? – DevelopmentIsMyPassion

+0

PHP의 mysql_ 함수를 사용하지 마십시오. 대신 PDO를 사용하십시오. – randak

+0

당신은 어떻게 당신을 의미합니까? – Deathslayer

답변

0

사용 LEFT JOIN .Try이 :

<?php 
require('./config.php'); 
mysql_connect($host, $user, $pass) or 
die("Could not connect: " . mysql_error()); 
mysql_select_db($db); 

$query = mysql_query("SELECT e.name,e.email FROM accounts a 
        LEFT JOIN emails e ON a.name = e.name"); 
while($row = mysql_fetch_array($query, MYSQL_NUM)) 
{ 
echo "<table><tr><td>"; 
echo "<bold>Name Email</bold></td></tr>"; 
echo "<tr><td><bold>$row[0] $row[1]</bold></td></tr>"; 
echo "</table>"; 
} 
mysql_free_result($result); 
?> 
+1

고맙습니다. 또한 행 뒤에 테이블 행에 이러한 세부 정보를 설정할 수있는 방법을 설명해 주실 수 있습니다. 그 점을 잊어 버린 것을 잊어 버렸습니다. – Deathslayer

+0

업데이트 된 답변 확인 ... –

+1

대단히 감사합니다. – Deathslayer

관련 문제