Avatar billede kubs Nybegynder
04. maj 2008 - 20:10 Der er 9 kommentarer

Opstilling af data hentet fra database efter kategorier.

Hej Eksperter :-)
Jeg er løbet ind i et lille problem.
Jeg har en database, hvor jeg i en tabel gemmer forskellige links. Til hver link tilhører der et navn og kategori. I en anden tabel gemmer jeg de forskellige kategorier, så jeg kan tilføje og slette  i kategorierne.

Problemet er at jeg skal have kombineret dataene i de to tabeller,så jeg får linkene vist på følgende måde:

Kategori A:
Link1 fra kategori A
Link2 fra kategori A

Kategori B:
Link1 fra kategori B
Link2 fra kategori B

osv.

Jeg har forsøgt mig lidt frem og tilbage, men det har været uden held mit sidste forsøg sådan her ud.. Det viste godt nok de forskellige links, men deler det ikke rigtigt op efter kategorier.
<TABLE>
<?
echo "<br>";
$opkald = mysql_query("SELECT typer FROM kliniskenoterindstil");
while($index = mysql_fetch_array($opkald)){

$foresp = mysql_query("SELECT Navn, Type, Link FROM kliniskenoter WHERE Type='$index[typer]' ");
while($data = mysql_fetch_array($foresp)){
  echo $index["typer"];
  echo "<TR><TD VALIGN=TOP>";
  echo "<a href=http://";
  echo $data["Link"];
  echo ">";
  echo $data["Navn"];
  echo "</a>";
  echo "</TD>    </TR>";
}
echo "<br>";
}
?>
</TABLE>
Avatar billede jakobdo Ekspert
04. maj 2008 - 22:51 #1
Prøv med:
SELECT kni.typer, kn.Navn, kn.Type FROM kliniskenoterindstil kni INNER JOIN kliniskenoter.kn ON kni.typer = kn.Type ORDER BY kni.typer
Avatar billede kubs Nybegynder
05. maj 2008 - 13:40 #2
Den melder fejl, hvis jeg indsætter det...
Avatar billede jakobdo Ekspert
05. maj 2008 - 13:48 #3
Hvad siger den ?
Avatar billede kubs Nybegynder
05. maj 2008 - 20:51 #4
Den melder:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
til den her linie:
while($data = mysql_fetch_array($foresp)){

Det jeg gjorde var at udskifte følgende: SELECT Navn, Type, Link FROM kliniskenoter WHERE Type='$index[typer]'
med det du skrev, var det rigtigt nok??
Avatar billede jakobdo Ekspert
05. maj 2008 - 21:01 #5
Prøv at start med at test SQL'en:

SELECT kni.typer, kn.Navn, kn.Type FROM kliniskenoterindstil kni INNER JOIN kliniskenoter.kn ON kni.typer = kn.Type ORDER BY kni.typer

Direkte i phpmyadmin, virker den der ?
Avatar billede kubs Nybegynder
06. maj 2008 - 14:47 #6
Nej, den melder det her tilbage:

MySQL returnerede: 

#1146 - Table 'kliniskenoter.kn' doesn't exist.

Skal jeg give mine tabeller et andet navn. Ved ikke rigtigt hvad kn og kni har af indflydelse på det hele..
Avatar billede jakobdo Ekspert
06. maj 2008 - 15:34 #7
kliniskenoter.kn skal være: kliniskenoter kn
Avatar billede kubs Nybegynder
10. maj 2008 - 10:31 #8
Nu melder den ikke fejl længere, men det fremkommer stadig ikke rigtigt..
Men efter nærmere eftertanke, så tror jeg , at jeg prøver en løsning til at vise mine links..
Jeg takker for dine forsøg.
Avatar billede jakobdo Ekspert
10. maj 2008 - 11:26 #9
Hvad hvis du så kalder den SQL direkte i phpmyadmin, hvad siger den der ?
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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