Hente data fra to tabeller i samme query?
Goddag folkens,Jeg er lige begyndt at lege med PHP og mySQL igen, efter et par års pause. Så jeg er stadig meget rusten.
Mit problem er, at jeg skal bruge et udtræk fra tabellen "news", hvor jeg kun skal bruge, de nyheder, hvor author er = brugernavn, fra tabellen bruger_system. Kan i følge mig?
Prøver lige at uddybe lidt. Jeg har øverst en query, som henter data fra bruger_system ud fra ID, eller Brugernavn. Det jeg så gerne vil, er at også vise, hvad samme bruger har posted af nyheder. Så den skal altså også hente data fra en anden tabel, i samme query.
Koden ser sådan her ud:
<?
if(isset($_SESSION['logget_ind'])){
if(isset($_GET[ID])) {
$query = mysql_query("SELECT * FROM bruger_system WHERE ID = '$_GET[ID]' OR brugernavn = '$_GET[Brugernavn]' ORDER BY ID") or die(mysql_error());
while ($row1 = mysql_fetch_assoc($query)) {
?>
<div class="ostatnie">
<h3>UngNews profil for <? echo $row1[brugernavn]; ?></h3>
<table>
<tr>
<td><b>Navn:</b></td>
<td><? echo ucwords(strtolower($row1[navn])); echo " "; echo ucwords(strtolower($row1[efternavn])); ?></td>
</tr>
<tr>
<td><b>Landsdel:</b></td>
<td><? echo $row1[landsdel]; ?></td>
</tr>
<td><b>Brugernavn:</b></td>
<td><? echo $row1[brugernavn]; ?></td>
</tr>
<td><b>Status:</b></td>
<td><? echo $row1[bruger_level]; ?></td>
</tr>
<td><b>Medlem siden:</b></td>
<td><? echo $row1[oprettet]; ?></td>
</tr>
<td><b>Seneste online:</b></td>
<td><? if($row1[online] == 'ja'){ echo "<font color='#FF0000'>Online nu!</font>"; }else { if ($row1[sidst_online] == ''){echo "$row1[brugernavn] har ikke haft sit første logind endnu!";}else {echo $row1[sidst_online]; }} ?></td>
</tr>
</tr>
<td>
<b>Profil point:</b></td>
<td><? echo $row1[point]; ?></td>
</tr>
</table>
<h3>Profil tekst</h3>
<?
if($row1[profil_tekst] > ''){
include 'fjernetord.php';
echo str_replace($ord_der_skal_erstattes, $erstat_ord_med, nl2br(htmlspecialchars($row1[profil_tekst])));
}
else {
echo "<i>$row1[brugernavn] har endnu ikke skrevet noget i sin profil tekst.</i>";
}
if($_SESSION["bruger_level"] == 'Administrator'){
echo '<br /><h3>Administrator</h3>';
echo '<a href="?page=admin/indstillinger&ID='.$_GET[ID].'">Rediger denne profil</a> - <a href="?page=admin/sletbruger&ID='.$_GET[ID].'">Slet bruger</a>';
}
?>
</div>
<?
}
}
?>
<?
if(isset($_GET[Brugernavn])) {
$query = mysql_query("SELECT * FROM bruger_system WHERE brugernavn = '$_GET[Brugernavn]' ORDER BY ID") or die(mysql_error());
while ($row1 = mysql_fetch_assoc($query)) {
?>
<div class="ostatnie">
<h3>UngNews profil for <? echo $row1[brugernavn]; ?></h3>
<table>
<tr>
<td><b>Navn:</b></td>
<td><? echo ucwords(strtolower($row1[navn])); echo " "; echo ucwords(strtolower($row1[efternavn])); ?></td>
</tr>
<tr>
<td><b>Landsdel:</b></td>
<td><? echo $row1[landsdel]; ?></td>
</tr>
<td><b>Brugernavn:</b></td>
<td><? echo $row1[brugernavn]; ?></td>
</tr>
<td><b>Status:</b></td>
<td><? if($row1[bruger_level] == '10'){echo "Administrator";} else {} if($row1[bruger] == '5'){echo "Skrivbent";} else{} if($row1[bruger] == '0'){echo "Bruger";} else{}?></td>
</tr>
<td><b>Medlem siden:</b></td>
<td><? echo $row1[oprettet]; ?></td>
</tr>
<td><b>Seneste online:</b></td>
<td><? if($row1[online] == 'ja'){ echo "<font color='#FF0000'>Online nu!</font>"; }else { echo $row1[sidst_online]; } ?></td>
</tr>
</tr>
<td><b>Profil point:</b></td>
<td><? echo $row1[point]; ?></td>
</tr>
</table>
<h3>Profil tekst</h3>
<?
if($row1[profil_tekst] > ''){
include 'fjernetord.php';
echo str_replace($ord_der_skal_erstattes, $erstat_ord_med, nl2br(htmlspecialchars($row1[profil_tekst])));
}
else {
echo "<i>$row1[brugernavn] har endnu ikke skrevet noget i sin profil tekst.</i>";
}
?>
</div>
<?
}
}
}
else {
include 'ikkebruger.php';
}
?>