PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 2 Abfragen kombinieren ?


Hardy74
31.07.2006, 18:01:44
Hi,

ich hab mal wieder ein kleines Problem *g*

Also das ganze ist so, ich muss aus einer sql Abfrage einen Wert an eine zweite Abfrage weitergeben um dort dann die entsprechenden Daten ausgeben zu können, allerdings weiss ich nicht wie ich das anstellen muss.
Aso, bei der ersten Abfrage sollen die ersten 5 Einträge übergeben werden.

Hier hab ich mal meinen Versuch das zu lösen (so bekomm ich aber leider nicht das raus was ich haben möchte :/):


<?php
$next = "SELECT songID FROM queuelist ORDER BY sortID ASC LIMIT 0, 5";
$nextresult = mysql_query($next);

while($row = mysql_fetch_array($nextresult))

$newsongs = $row[songID];

$nextsongs = "SELECT * FROM songlist WHERE songID LIKE '$newsongs'";
$nextsongsresult = mysql_query($nextsongs);
?>
<table cellspacing="1" cellpadding="0" border="0" class="forumline" width="780" align="center">

<tr>
<td class="catHead" height="25" align="center" colspan="4"><img src="images/bullet_black.gif" style="vertical-align:middle">&nbsp;<span class="genmed" style="vertical-align:middle"><b>Nächste 5 Songs</b></span>&nbsp;<img src="images/bullet_black.gif" style="vertical-align:middle"></td>
</tr>
<tr>
<td class="row1" height="20" align="center" colspan="2"><span class="gensmall"><b>Die nächsten 5 Songs die gespielt werden</b></span></td>
</tr>
<?php
while($row = mysql_fetch_array($nextsongsresult))

echo "<tr><td class='row3' height='15' width='30%' align='center'><span class='gensmall'>".$row[artist]."</span></td><td class='row3' height='15' align='center'><span class='gensmall'>".$row[title]."</span></td></tr>";
?>
</table>


Da ich noch Anfänger bin, komm ich nicht ganz dahinter wie man das machen sollte, bzw. was der beste Weg ist so etwas zu realisieren.
Später muss noch etwas dazu gemacht werden was mit einer if-Abfrage (meine Spezialität *Ironie*) verarbeitet werden muss...aber das erst später :)

Ich hoff es kann mir jemand helfen....Danke

Gruss
Hardy

Hardy74
01.08.2006, 10:15:16
Okay...es hat sich noch etwas geändert....

Das ganze müsste jetzt noch in diesen Scriptabschnitt integriert werden:


<?php
$lastsongs = "SELECT * FROM historylist ORDER BY date_played DESC LIMIT 1, 5";
$lastsongsresult = mysql_query($lastsongs);
?>
<table cellspacing="1" cellpadding="0" border="0" class="forumline" width="780" align="center">

<tr>
<td class="catHead" height="25" align="center" colspan="4"><img src="images/bullet_black.gif" style="vertical-align:middle">&nbsp;<span class="genmed" style="vertical-align:middle"><b>Letzte 5 Songs</b></span>&nbsp;<img src="images/bullet_black.gif" style="vertical-align:middle"></td>
</tr>
<tr>
<td class="row1" height="20" align="center" colspan="2"><span class="gensmall"><b>Die letzten 5 Songs die gespielt wurden</b></span></td>
<td class="row1" height="20" align="center" colspan="2"><span class="gensmall"><b>Die nächsten 5 Songs die gespielt werden</b></span></td>
</tr>
<?php
while($row = mysql_fetch_array($lastsongsresult))

echo "<tr><td class='row3' align='center' rowspan='2'><img src='images/cover/".$row[picture]."' style='vertical-align:middle' width='50' height='50' border='0'></td><td class='row3' align='left'><span class='gensmall'>&nbsp;&nbsp;&nbsp;".$row[artist]."</span></td><td class='row3' align='center' rowspan='2'></td><td class='row3' align='left'></td></tr><tr><td class='row3' align='left'><span class='gensmall'>&nbsp;&nbsp;&nbsp;".$row[title]."</span></td><td class='row3' align='left'></td></tr>";
?>
</table>


und hier ein Link damit man sehen kann wofür das sein soll
MetalBox (http://www.hardy.kzh-clan.de/neu/musicbox/musicbox.php)

Nun müsste ich halt wissen wie ich das machen kann, also mehrere Abfragen miteinander "verbinden" um sie dann an gewünschter Stelle ausgeben zu können.
Hab leider noch paar Probs mit dem ganzen "verschachteln" und hab leider auch nicht wirklich etwas gefunden wie man Abfragen "verknüpfen" kann zB mit && (hab ich mal in einem Script gesehn, daher auch meine Frage) usw.

Ich hoff das sich doch noch jemand meldet der mir hilft....danke

Gruss
Hardy

RoSt
01.08.2006, 12:01:02
Man kann die Selects verschachteln oder sie mit einem join verknüpfen.
Vielleicht hilft auch das hier weiter: > Klick < (http://www.selfphp.de/forum/showthread.php?t=14099)

BTW: Das Thema gehört eher in die Rubrik (My)SQL.

Hardy74
01.08.2006, 12:53:59
BTW: Das Thema gehört eher in die Rubrik (My)SQL.

Ups, sorry...da hast du wohl recht....naja ich bin Anfänger und weiss ab und zu nicht so recht wo und wie ich mich an wen wenden soll / kann...sorry.

Falls ein Moderator oder so mal reinschaut kann er es ja bitte verschieben....danke.

So dann werd ich mir mal das ganze anschauen und versuchen zu verstehen...so einfache Abfragen hab ich nun schon halbwegs verstanden, nur wenns um das "verschachteln" usw. geht, blick ich noch nicht so ganz durch...muss, sobald mein Knie wieder in Ordnung ist, endlich in die Stadt und mir ein Buch zum Thema PHP und mySQL zulegen.

Danke nochma für den Hinweis und den Link.

Gruss
Hardy