Hoppa till innehåll

Sida 1 av 1
  • Du kan inte starta en ny tråd
  • Du kan inte svara i tråden

SQL-fråga till flera tabeller samtidigt

#1

  • Användare
  • PipPip
  • Grupp: Medlemmar
  • Inlägg: 35
  • Gick med: 2011-03-17

Skrivet 28 maj 2012, 10:32

Hej

Jag har en mysql-databas med flera tabeller med info om mina bilder. SQL-frågan (enl. nedan) tar fram en bild med rätt tillhörande bildtext, rätt fotoplats, osv...
Men... variabeln "nyckelord_ID" innehåller bara ett värde. Jag taggar alla bilder med en eller flera nyckelord.

Hur formulerar jag om sql-frågan så att svaret rymmer flera värden i variabeln "nyckelord_ID"?
Nyckelorden har en egen tabell!
$sql =
"SELECT  
bildtext_db.bildnr_ID,
bildtext_db.bildtext,
fotoplats_db.fotoplats_ID,
fotoplats_db.kommun,
nyckelord_db.nyckelord_ID

FROM bildtext_db, fotoplats_db, nyckelord_db, kop_1

WHERE bildtext_db.bildnr_ID = 12345

AND bildtext_db.bildnr_ID = kop_1.bildnr_ID
AND kop_1.fotoplats_ID = fotoplats_db.fotoplats_ID
AND bildtext_db.bildnr_ID = nyckelord_db.bildnr_ID ";

/$result = mysql_query($sql);

while ($row = mysql_fetch_array($result))
    {
    $bildnr = $row[0];
    $bildtext = $row[1];
    $fotoplats = $row[2];
    $kommun = $row[3];
    $nyckelord = $row[4];
    } 


Med hopp om svar, tack på förhand
Erland Segerstedt, Kusmark

Inlägget är redigerat av Cluster: 28 maj 2012, 10:35.
Anledning till redigering: Code-taggar tillagda av moderator

0

#2
Medlem är utloggad   Cluster 

  • Omniscient
  • Ikon
  • Grupp: Moderatorer
  • Inlägg: 7 826
  • Gick med: 2000-08-08

Skrivet 28 maj 2012, 10:35

Antar att du menar:
WHERE bildtext_db.bildnr_ID IN (12345, 12346, 12347, 12348)

0

#3

  • Användare
  • PipPip
  • Grupp: Medlemmar
  • Inlägg: 35
  • Gick med: 2011-03-17

Skrivet 28 maj 2012, 12:02

Visa inläggCluster, den 28 maj 2012, 10:35, sa:

Antar att du menar:
WHERE bildtext_db.bildnr_ID IN (12345, 12346, 12347, 12348)



Näää... tvärtom!
Flera nyckelord till samma bild, nyckelorden finns i olika records (rader) i samma tabell.

Inlägget är redigerat av Erland Segerstedt: 28 maj 2012, 15:19.

0

#4

  • Användare
  • PipPip
  • Grupp: Medlemmar
  • Inlägg: 35
  • Gick med: 2011-03-17

Skrivet 29 maj 2012, 09:17

Hurra!

Jag har hittat en kod som löser mitt problem, se nedan:


<p><b>Hitta andra bilder med dessa nyckelord:</b>
<br>
<?php
$query2 ="SELECT bildnr_ID, nyckelord_ID
FROM kop_2
WHERE bildnr_ID = 21212 ";
$result2 = mysql_query($query2) or die(mysql_error());
while ($roww = mysql_fetch_array($result2)){
echo $roww[1]. ", ";
}
?>

Nu ser min sida ut enl. bif. bilaga. Jag är nöjd så långt!

Raskt kommer nästa fråga upp!

Hur ser koden ut för att göra nyckelorden klickbara?
Koden för "fotograferingsplatsen enl. nedan:


<a href="#" style="text-decoration:none;"
onclick="window.opener.location='index_sokplats.php?sokstrang=<?php echo $fotoplats;?>';window.close();">
<?php echo $fotoplats; ?>
</a>

Med hopp om svar
Erland Segerstedt, Kusmark

Bifogade filer


0

#5

  • Användare
  • PipPip
  • Grupp: Medlemmar
  • Inlägg: 35
  • Gick med: 2011-03-17

Skrivet 30 maj 2012, 08:31

Dubbelt hurra!

Jag har hittat en kod som gör det jag vill med att få nyckelorden klickbara


<p><b>Hitta andra bilder med dessa nyckelord:</b>
<br>
<?php
$query2 ="SELECT bildnr_ID, nyckelord_ID
FROM kop_2
WHERE bildnr_ID = ' ". $_REQUEST['myImage'] ." ' ";

$result2 = mysql_query($query2) or die(mysql_error());

while ($roww = mysql_fetch_array($result2))
{
?>
<a href="#" style="text-decoration:none;"
onclick="window.opener.location='index_sokkey.php?sokstrang=<?php echo $roww[1]; ?>';window.close();">
<?php echo $roww[1]. ", "; ?></a>
<?php } ?>

Tack för hjälpen
Erland Segerstedt, Kusmark
0
Sida 1 av 1
  • Du kan inte starta en ny tråd
  • Du kan inte svara i tråden

1 besökare läser just nu den här tråden, varav 0 medlem(mar) och 1 gäst(er)
 
 
Senast obesvarade trådar
Prenumerera på nyheter

Missa inte våra nya
smarta nyhetsbrev

Läs mer om nyhetsbreven här!
Beställ direkt:


Extreme
PC för Alla-nätverket