Bosse168Medlem sedan nov. 20031 018 inlägg Kan man på något sätt hämta skribents namn och datumet ur en annan tabell i min nuvarande SQL sats? Alltså så jag slipper sätta en RecSet till i loopen
nuvarande:
SQL="SELECT c1.id,c1.namn,c1.beskriv,c2.id as subid,c2.namn as namn2,c2.beskriv as beskriv2,c2.inlagg as inlagg,c2.tradar as tradar FROM forum_cat c1 left join forum_cat c2 on c2.sub=c1.id where c1.sub=0 order by c1.namn,c2.namn"
Den jag vill få in:
"Select skribent,datum FROM forum_inlagg WHERE catID="& Rs("id") &" AND subID="& Rs("subid") &" ORDER BY datum DESC LIMIT 1"
LarsGMedlem sedan dec. 200012 464 inlägg Det är bara att lägga till ytterligare joinklausuler.
SELECT c1.id,c1.namn,c1.beskriv,c2.id as subid,
c2.namn as namn2,c2.beskriv as beskriv2,
c2.inlagg as inlagg,c2.tradar as tradar ,
skribent,datum
FROM forum_cat c1 left join forum_cat c2
on c2.sub=c1.id left join forum_inlagg
on cat_id = c1.id and subId = c2.id
where c1.sub=0
order by datum,c1.namn,c2.namn
Bosse168Medlem sedan nov. 20031 018 inlägg Hur gör jag för att hämta ut skribent namnet och datumet?
SQL="SELECT c1.id,c1.namn,c1.beskriv,c2.id as subid, " & _
"c2.namn as namn2,c2.beskriv as beskriv2, " & _
"c2.inlagg as inlagg,c2.tradar as tradar , " & _
"skribent,datum " & _
"FROM forum_cat c1 left join forum_cat c2 " & _
"on c2.sub=c1.id left join forum_inlagg " & _
"on catID = c1.id and subId = c2.id " & _
"where c1.sub=0 " & _
"order by datum,c1.namn,c2.namn"
PeeerMedlem sedan mars 20025 907 inlägg Precis som du gör för att hämta ut ex. beskrivningen eller subid't. typ rs("skribent") och rs("datum").
Bosse168Medlem sedan nov. 20031 018 inlägg Jag får inte ut någonting när jag använder rs("skribent")
Bosse168Medlem sedan nov. 20031 018 inlägg Det var inget.
Men nu har ett annat problem dykt upp när jag loopar ut allt och det inte finns några inlägg så får jag detta fel mess fast jag använder en IF sats.
fel meddelandet:
Microsoft VBScript runtime error '800a005e'
Invalid use of Null: 'Month(...)'
koden:
If Rs("datum")="" Then
Response.Write("-")
Else
Response.Write Day(Rs("datum")) & " " & MonthName(Month(Rs("datum")),True) &" kl "& FormatDateTime(Rs("datum"), 4) &"<br>"& Rs("skribent") &""
End If
solbulleMedlem sedan mars 20015 287 inlägg Fullösning:
If Rs("datum")&""="" Then
Den rätta lösningen lär vara att kolla om ditt RS innehåller inget eller null.
Bosse168Medlem sedan nov. 20031 018 inlägg If isNull(Rs("datum")) Then
löste d, tackar för hjälpen
Bosse168Medlem sedan nov. 20031 018 inlägg Nu märkte jag ett annat fel.
Om den hittar någon post i forum_inlagg så slutar den loopen....
Kanske ska ha med looparna.. ;)
Do until Rs.eof
%>
<tr>
<td colspan="4" class="rubrik2" bgcolor="#EFEFEF">
<%=Rs("namn")%>
</td>
</tr>
<tr>
<td colspan="4" height="1" bgcolor="#CCCCCC"></td>
</tr>
<%
strNamn = rs("namn")
Do
If rs.EOF Then Exit Do
If rs("namn") <> strNamn Then Exit Do
%>
'--- lite kod
rs.MoveNext
Loop
Loop
Bosse168Medlem sedan nov. 20031 018 inlägg Ingen som vet vad som stoppar loopen?
PeeerMedlem sedan mars 20025 907 inlägg If rs("namn") <> strNamn Then Exit Do
Stoppar loopen om namnet ändras. Varför har du med den if-satsen?
Bosse168Medlem sedan nov. 20031 018 inlägg För först loopar jag ut huvudkategorins rubrik och sedan alla underkategorier tillhörande den. Men tror jag löste det genom att ta bort
datum,