Help PHP Query

I have this code, basically what i am trying to do is get the character information and what guild they are in and output it to a table. The thing I am having issues with is getting the guild NAME to display. I can get it to output the guildid, but not the name… anyone care to lend a hand? Thanks in advance!


<?php

include ("../includes/config.php");

mysql_select_db($chardb_name, $chardb_connect) or die(mysql_error());

$query  =  "SELECT name, race, class, gender, level, guildid

   FROM characters, guild_member

   WHERE characters.guid = guild_member.guid";


$result =  mysql_query($query) or die(mysql_error());

?>

<table align=center cellpadding="1" cellspacing="1"  border="1">

<thead>

<td>Name</td>

<td>Race</td>

<td>Class</td>

<td>Gender</td>

<td>Level</td>

<td>Guild</td>

</thead>

<tbody>

<?php

while($row = mysql_fetch_object($result))

{

$name = $row->name;

$race = $row->race;

$class = $row->class;

$gender = $row->gender;

$level = $row->level;

$guildid = $row->guildid;


echo " <tr>";

echo " <td>",$name,"</td>";

echo " <td>",$race,"</td>";

echo " <td>",$class,"</td>";

echo " <td>",$gender,"</td>";

echo " <td>",$level,"</td>";

echo " <td>",$guildid,"</td>";

echo " </tr>";

}

?>

Simplified, and trying to figure out how to use join


<?php

include ("../includes/config.php");

mysql_select_db($chardb_name, $chardb_connect) or die(mysql_error());

$query = "SELECT characters.name, guild.name

FROM characters INNER JOIN guild

ON guild_member.guid = characters.guid

WHERE guild_member.guildid = guild.guildid";

$result = mysql_query($query) or die(mysql_error());

// Print out the contents of each row into a table

while($row = mysql_fetch_array($result)){

echo $row['characters.name']. " - ". $row['guild.name'];

echo "<br />";

}

?>

Still does not work

Figured it out


<?php

include ("../includes/config.php");

mysql_select_db($chardb_name, $chardb_connect) or die(mysql_error());

$query = "SELECT characters.name AS cname, guild.name AS gname

		  FROM characters AS characters

		  LEFT JOIN guild_member AS guild_member ON guild_member.guid = characters.guid

    LEFT JOIN guild AS guild ON guild.guildid = guild_member.guildid

    WHERE guild_member.guid = characters.guid";


$result = mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_array($result)){

echo $row['cname']. " - ". $row['gname'];

echo "<br />";

}

?>

[CODE]SELECT c.name AS cname, g.name AS gname

              FROM characters AS c

              INNER JOIN guild_member AS gm ON gm.guid = c.guid

              LEFT JOIN guild AS g ON g.guildid = gm.guildid[/CODE]

When using an inner join you don’t need the where clause