Japp det går...men...
varför hämtar du inte ut informationen i samma SQL sats?
Typ så här:
SELECT m.*, d.* From members m, dagbok d WHERE
m.username = '"&session("username")&"' AND WHERE d.username2 = '"&session("username")&"'
@EchO
25 svar · 569 visningar · startad av ampy
Kan man ha två tabeller öppna på en gång, kan man göra tex så här då:
SQL = "Select * From members WHERE username = '"&session("username")&"'"
RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic
SQL2 = "Select * From dagbok WHERE username = '"&session("username")&"'"
RecSet2.Open SQL, Connect, adOpenStatic, adLockOptimistic
Eller ska man göra det på något annat sätt?
Japp det går...men...
varför hämtar du inte ut informationen i samma SQL sats?
Typ så här:
SELECT m.*, d.* From members m, dagbok d WHERE
m.username = '"&session("username")&"' AND WHERE d.username2 = '"&session("username")&"'
@EchO
Felmeddelande:
Microsoft OLE DB Provider for ODBC Drivers fel '80040e14'
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel (operator saknas) i frågeuttrycket 'm.username = 'Andreas' AND WHERE d.username2 = 'Andreas''.
/80/dagbok.asp, line 11
Rad 11:
SQL = "SELECT m.*, d.* From members m, dagbok d WHERE m.username = '"&session("username")&"' AND WHERE d.username2 = '"&session("username")&"'"
WHERE skall bara förekomma en gång.
SQL = "SELECT m.*, d.* From members m, dagbok d WHERE m.username = '"&session("username")&"' AND d.username2 = '"&session("username")&"'"
Mvh,
På din tråd @nders fick jag följande felmeddelande:
Microsoft OLE DB Provider for ODBC Drivers fel '80040e10'
[Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 1 förväntades.
Jag råkade sätta in username2 istället för username...
Kontrollera så att du har rätt namn...
@EchO
Så här ser koden ut nu:
SQL = "SELECT m.*, d.* From members m, dagbok d WHERE m.username = '"&session("username")&"' AND d.username = '"&session("username")&"'"
Response.Write SQL
RecSet.Open SQL, Connect, adOpenStatic, adLockOpt
Felmeddelande:
SELECT m.*, d.* From members m, dagbok d WHERE m.username = 'Andreas' AND d.username = 'Andreas'
Microsoft OLE DB Provider for ODBC Drivers fel '80040e10'
[Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 1 förväntades.
Stämmer tabell och fältnamn? Dubbelkolla.
Kom på att kolumnen session("username") finns ju inte i tabellen dagbok, utan det är så här jag vill göra. I tabellen dagbok vill jag hämta alla poster som innehåller session("username") ur kolumnen skribent. Den första tabellen stämde alltså men hur ska jag göra i den andra tabellen?
Testa med det här:
Det blir nog knas när du ska skriva ut username pga att de heter likadant i de två tabellerna...
SELECT m.username AS user1, d.username AS user2 From members m, dagbok d WHERE m.username = '"&session("username")&"' AND d.username = '"&session("username")&"'"
När du sedan ska skriva ut username använder du user1 istället...
Kan man inte skriva något i stil med det här?
SQL = "SELECT m.*, d.* From members m, dagbok d WHERE m.username = '"&session("username")&"' AND d.username = skribent = '"&session("username")&"'"
OBS!
Den koden ovan fungerade inte.
Alltså jag vill hämta information från två olika tabeller. Den enda heter members och den andra heter dagbok. I tabellen dagbok så vill jag skriva ut de poster som innehåller session("username") i kolumnen skribent.
Hoppas du förstår bättre nu.
SQL = "SELECT m.*, d.* From members m, dagbok d WHERE m.username = '"&session("username")&"' AND d.skribent = '"&session("username")&"'"
Tack så mycket solbulle. Denna kod har jag en bit under:
If Not RecSet.EOF Then
Do Until RecSet.EOF
RecSet("datum")
RecSet.MoveNext
Loop
Else
Response.Write "Inga meddelanden hittades."
End If
Jag vill att denna kod ska hämta från tabellen dagbok, hur ska man göra då?
Det borde fungera, förutom att du ska väl göra något med:
RecSet("datum")
tex:
response.write RecSet("datum")
Där emellan kommer ju öppnandet av SQL-satsen o så men det förutsätter jag att du har redan!?!
Nu fick jag detta felmeddelande på en rad lite längre ner på sidan:
Undantag inträffade.
/80/dagbok.asp, line 127
rad 127 ser ut så här:
<% If Session("username") = RecSet("username") Then%>
RecSet("username") hämtar jag ju från tabellen members, men den koden jag visade innan hämtar jag från dagbok och den funkar. Måste man inte skriva något så att servern vet att vilken tabell den ska ta ifrån eller sker det automatiskt?
Jag tycker nog att du skall fått med dig det.
Det lättaste sättet att testa är nog att tillfälligt göra så att din If-sats inte körs och sen skriva ut och kolla värdet med:
response.write RecSet("username")
Då får jag detta felmeddelande:
Antingen är BOF eller EOF satt till True, eller så har aktuell post raderats. Den begärda åtgärden kräver en aktuell post.