Avatar billede hvisle Nybegynder
16. juli 2003 - 21:15 Der er 13 kommentarer og
1 løsning

Hva pokker er der galt ?

<%
Set rs = Conn.Execute("select * from tabel2 where id = " & Request.QueryString("id"))
navn1 = rs("navn")
rs.close
set rs = nothing

Set rs = Conn.Execute("select * from tabel1 where colonne1 OR colonne2 = " & Request.QueryString("id") & " ORDER BY dato DESC")
               
if rs.eof or rs.bof then
%>
<p>ingen af de 2 colonner har den id</p>
<% else %>
<table border="0" bordercolor="#000000" width="629">
<%
Do until rs.eof
               
if rs("colonne1") <> Request.QueryString("id") then
set navn2 = rs("colonne1")
else
set navn2 = rs("colonne2")
end if
               
dato = rs("dato")
tid = rs("tid")
               
Set es = Conn.Execute("select * from tabel2 where id = " & hmmm)
navn2 = es("navn")
es.close
set es = nothing
%>
<table border="0" bordercolor="#000000" width="629">
<tr>
<td bordercolor="#ffffff" bgcolor="#D2D0D0" width="175">
<b><%=navn1%></b></td>
<td bordercolor="#ffffff" bgcolor="#D2D0D0" width="32">
<b>OG</b></td>
<td bordercolor="#ffffff" bgcolor="#D2D0D0" width="187">
<b><%=navn2%></b></td>
<td bordercolor="#ffffff" bgcolor="#D2D0D0" width="113">
<b>D. <%=dato%></b></td>
<td bordercolor="#ffffff" bgcolor="#D2D0D0" width="100">
<b>KL. <%=tid%></b></td>
</tr>
                       
<%
rs.movenext
loop
rs.close
set rs = nothing
end if
end if
%>
</table>
Avatar billede erikjacobsen Ekspert
16. juli 2003 - 21:17 #1
Set rs = Conn.Execute("select * from tabel1 where colonne1 = " & Request.QueryString("id") & " OR colonne2 = " & Request.QueryString("id") & " ORDER BY dato DESC")
Avatar billede hvisle Nybegynder
16. juli 2003 - 21:29 #2
Næææ samme problem :/
Den skriver det samme navn ved begge felter ...
Avatar billede erikjacobsen Ekspert
16. juli 2003 - 21:33 #3
ok, hvis vi stadig skal lede i blinde - det er jo ikke li'som du har
sagt hvad dit problem er - så er der en variabel: hmmmm, som jeg
ikke lige kan se du giver en værdi
Avatar billede erikjacobsen Ekspert
16. juli 2003 - 21:34 #4
Og så overskriver du navn2 i
  navn2 = es("navn")
Avatar billede hvisle Nybegynder
16. juli 2003 - 21:39 #5
Ja, jeg kan sq dårligt finde rundt selv ... er rimmelig ny i asp.. (selvlært)
men den med hmmm skal være således:

Set es = Conn.Execute("select * from tabel2 where id = " & navn2)

Den kommer ik med fejl, men skriver det samme navn begge steder, hvor den skulle give 2 forskellige ...
Avatar billede hvisle Nybegynder
16. juli 2003 - 21:41 #6
kan godt være jeg har valgt en dum måde at gøre det på ...
Avatar billede erikjacobsen Ekspert
16. juli 2003 - 21:42 #7
Den ændring tror jeg ikke passer. Men det er svært at vide, når jeg
ikke kan se hvad du vil.
Avatar billede squashguy Nybegynder
16. juli 2003 - 22:04 #8
nu har jeg kun lige skimmet koden, men denne sql ser lidt forkert ud:

select * from tabel1 where colonne1 OR colonne2 = id ORDER BY dato DESC

mere korrekt:

select * from tabel1 where colonne1 = id OR colonne2 = id ORDER BY dato DESC
Avatar billede hvisle Nybegynder
16. juli 2003 - 22:56 #9
ja det mente erik også, men det hjælper desværre ik at skifte den ud... samme problem.
hvis i laver en database og prøver, vil i ku se den kan ik hitte ud af det... af en eller anden grund :/
Avatar billede erikjacobsen Ekspert
16. juli 2003 - 22:59 #10
Jeg hopper ud af spørgsmålet. Jeg har ikke tid til at vente på du tager dig sammen til at forklare hvad problemet er.
Avatar billede cesil Nybegynder
17. juli 2003 - 09:29 #11
Prøv det her

<%
Set rs = Conn.Execute("select navn from tabel2 where id = " & Request.QueryString("id"))
    navn1 = rs("navn")
rs.close
set rs = nothing

Set rs = Conn.Execute("select * from tabel1 where colonne1 = " & Request.QueryString("id") & " OR colonne2 = " & Request.QueryString("id") & " ORDER BY dato DESC")
if rs.eof or rs.bof then
%>
    <p>ingen af de 2 colonner har den id</p>
<%
else
%>
    <table border="0" bordercolor="#000000" width="629">
    <%
    Do until rs.eof
    if cint(rs("colonne1")) <> cint(Request.QueryString("id")) then
        navn2 = rs("colonne1")
    else
        navn2 = rs("colonne2")
    end if
                   
    dato = rs("dato")
    tid = rs("tid")
                   
    Set es = Conn.Execute("select navn from tabel2 where id = " & rs("id"))
        navn2 = es("navn")
    es.close
    set es = nothing
    %>
    <table border="0" bordercolor="#000000" width="629">
    <tr>
    <td bordercolor="#ffffff" bgcolor="#D2D0D0" width="175">
    <b><%=navn1%></b></td>
    <td bordercolor="#ffffff" bgcolor="#D2D0D0" width="32">
    <b>OG</b></td>
    <td bordercolor="#ffffff" bgcolor="#D2D0D0" width="187">
    <b><%=navn2%></b></td>
    <td bordercolor="#ffffff" bgcolor="#D2D0D0" width="113">
    <b>D. <%=dato%></b></td>
    <td bordercolor="#ffffff" bgcolor="#D2D0D0" width="100">
    <b>KL. <%=tid%></b></td>
    </tr>
                           
    <%
    rs.movenext
    loop
    rs.close
    set rs = nothing
end if

%>
</table>


hvad indeholder rs("colonne1")

den her linie har jeg ændret så den henter navn fra tabel2 udfra id i tabel1. Er det rigtigt?
Set es = Conn.Execute("select navn from tabel2 where id = " & rs("id"))

Så vidt jeg kan se var der en end if for meget til sidst
Avatar billede hvisle Nybegynder
17. juli 2003 - 17:02 #12
erikjacobsen> Hvis du læser min kommentar Nr. 2, kan du se jeg har beskrevet problemmet der.
Men Cesil har løst problemmet ! Dog var denne linie forkert:
Set es = Conn.Execute("select navn from tabel2 where id = " & rs("id"))

Det der fixede det må ha været linien med "cint" .... hva betyder det egentlig ?
Avatar billede cesil Nybegynder
17. juli 2003 - 22:05 #13
at værdien læses som et tal.
thx for points
Avatar billede hvisle Nybegynder
18. juli 2003 - 20:00 #14
np, takker for hjælpen !
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
Kurser inden for grundlæggende programmering

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