26. oktober 2003 - 10:46
Der er
17 kommentarer og 1 løsning
Hjælp maj
Hvorfor får jeg fejl på følgende? $result = mysql_query("SELECT * FROM artikler, nyheder ORDER BY id DESC LIMIT 5"); FEJL: "Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource"
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
26. oktober 2003 - 10:52
#1
Fordi der er noget galt med din forespørgsel. Prøv med: $result = mysql_query("SELECT * FROM artikler, nyheder ORDER BY id DESC LIMIT 5") or die(mysql_error());
26. oktober 2003 - 10:55
#2
Column: 'id' in order clause is ambiguous
26. oktober 2003 - 10:56
#3
Det er meningen, at jeg vil hente de 5 nyeste rækker fra tabellerne artikler og nyheder. Dvs 5 rækker i alt.
26. oktober 2003 - 10:58
#4
Er feltet id entydigt?
26. oktober 2003 - 10:58
#5
begge tabeller indeholder feltet id
26. oktober 2003 - 11:00
#6
Så er det nemmeste nok at lave to forespørgsler.
26. oktober 2003 - 11:00
#7
egentlig er "ORDER BY dato" mere korrekt i forhold til det jeg vil, - men jeg får samme fejlmeddelelse.
26. oktober 2003 - 11:06
#8
$result = mysql_query("SELECT * FROM artikler, nyheder ORDER BY arktikler.id DESC LIMIT 5"); Lav den om til det, så sorterer den via id i arktikler.
26. oktober 2003 - 11:06
#9
Og så selvfølgelig med en or die... $result = mysql_query("SELECT * FROM artikler, nyheder ORDER BY arktikler.id DESC LIMIT 5") or die(mysql_error());
26. oktober 2003 - 11:07
#10
jamen så får jeg ikke de nyeste 5 nyheder eller artikler, men de nyeste artikler, ikke?
26. oktober 2003 - 11:11
#11
Jo det er rigtigt. Der vil jeg anbafale dig at lave 2 forespørgsler, og så sammenligne resultatet med php bagefter. Alternativt skal du ændre i strukturen i din database, hvor du har en tabel med både nyheder og arktikler, så et tal afgører om det er en nyhed eller en arktikel. eks. id | dato | overskrift | tekst | type Type indeholder så enten 1 for nyheder og 2 for arktikel.
26. oktober 2003 - 11:14
#12
hvordan vil du lave php-delen så?
26. oktober 2003 - 11:15
#13
Til hvilken løsning?
26. oktober 2003 - 11:16
#14
"Der vil jeg anbafale dig at lave 2 forespørgsler, og så sammenligne resultatet med php bagefter."
26. oktober 2003 - 11:17
#15
Noget i den her stil? while ($row1 = mysql_fetch_array($result1)){ while ($row2 = mysql_fetch_array($result2)){ if ($row1[dato] > $row2[dato]){ print "Artikel: $row1[titel]<br>"; }else{ print "Nyhed: $row2[titel]<br>"; } } } $count++; if ($count == 5) break; }
26. oktober 2003 - 11:22
#16
Den kode vil vist ikke køre som du ønsker. Jeg har ikkel ige tid til at strikk en løsning sammen nu, men noget med at stop det ind i et array og sorter dette. og så skrive det ud.
25. november 2007 - 16:42
#17
Mange tak for hjælpen! Da der ikke er nogen, der har afgivet svar, lukkes tråden.
25. november 2007 - 16:42
#18
.
Computerworld tilbyder specialiserede kurser i database-management