Avatar billede spike. Nybegynder
09. januar 2003 - 14:55 Der er 3 kommentarer

2 forespørgelser.. hvilket sammen i en..

Jeg har 2 databaser:
aoitem_items
der har felterne:
id | iconid | ql | itemdesc | owner | profession | entrydate

i den ligger der:
1 | 0 | 88 | NanoCrystal (Fluctuate Manifestation | Cheshire | | 2003-01-09 01:10:09

profession er altså tom

nå men det jeg mener er så, at i en anden lille database der hedder aoitems_nanocrystals er der felterne:
id | title | prof
I den her ligger der masser af rækker, rigtig mange af dem og en af dem hedder så: (* = et id tal, jeg ved ikke hvilket det har)
* | NanoCrystal (Fluctuate Manifestation | Meta-phycisist

Det jeg gerne nu vil have er:
Et php script der gør det at den viser først
NanoCrystal (Fluctuate Manifestation) QL: 88 for Meta Physicist posted on 2003-01-09 01:10:09 by Cheshire

Problemet er at i den database jeg har ligger de items der er indtastet, altså nanocrystalen, mens i en anden ligger der hvilken profession den er til.. jeg har selv prøvet lidt:

<?php
echo "<br>";
$db = mysql_connect("localhost", "", "");
mysql_select_db("items", $db);
$foresp = mysql_query("SELECT id, ql, itemdesc, owner, profession, entrydate FROM aoitem_items ORDER BY owner DESC");
while($data = mysql_fetch_array($foresp))
{
  $data[2] = $data[2] . ")";
  echo "<B>$data[2]</B> QL: $data[1] for $data[4] posted on $data[5] by $data[3]" . "<br>";
  $name = $data[2];
  $prof = mysql_query("SELECT prof FROM aoitem_nanocrystals WHERE prof LIKE $name");
  $datu = mysql_fetch_array($foresp);
  echo $datu[0];
}
?>
men det giver bare:
NanoCrystal (Fluctuate Manifestation) QL: 88 for posted on 2003-01-09 01:10:09 by Cheshire

og jeg ville gerne have at $datu[0] blev sat til at være "meta-phycisist"...

hvordan?

ps. notice lige at i databasen hedder de:
NanoCrystal (Fluctuate Manifestation
uden ) til sidst men jeg adder det sidste ) når de vises, dette er et problem i et program der exportere navnene..
Avatar billede arnvig Nybegynder
09. januar 2003 - 15:08 #1
du skal lave en join

SELECT id, ql, itemdesc, owner, prof, entrydate
FROM aoitem_items AI,
    aoitem_nanocrystals AN
where AN.id = AI.id    <==  her skal du have de nøgle felter som danne  relationen mellem de 2 tabeller


ORDER BY owner DESC
Avatar billede arnvig Nybegynder
09. januar 2003 - 15:14 #2
eller også skjal du kigge lidt på det her :
"SELECT prof FROM aoitem_nanocrystals WHERE prof LIKE $name"

skal måske rettes til

"SELECT prof FROM aoitem_nanocrystals WHERE prof LIKE '$name%'"

Når du bruger LIKE skal du som regel have et wildcard f,eks. %
Avatar billede arnvig Nybegynder
14. januar 2003 - 11:32 #3
Kunne du bruge svaret ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester