webForumDet fria alternativet

brev indikeras men visas inte

Databaser & SQL

12 svar · 541 visningar · startad av WebbisNet

Medlem sedan feb. 20032 027 inlägg
Frågan#1

Har fått ett problem med att rätt antal internbrev (pm) indikeras men i inboxen visas inget för den inloggade medlemmen, detta har inte strulat innan men nu så strular det ofta, hittar inget fel heller

set vipCheck=objConn.Execute("SELECT vip, username, sender mailID, Reciever "&_
"FROM tblUsers INNER JOIN tblUsers_imail ON tblUsers.userID = tblUsers_imail.sender "&_
"WHERE userID="& UserID &" order by mailID desc")

if vipCheck.eof then
   response.write " "
else
 if cint(vipCheck("VIP")) = 1 then
       sqlStr = "limit 1000"
   else
       sqlStr = "limit 100"
   end if
    [B]strSQL = "SELECT mailRead, username, mailDate, mailTime, sender, Headline, visaNyhetsbrev, message, mailID,Reciever, vip, saveMail "&_
    "FROM tblUsers INNER JOIN tblUsers_imail ON tblUsers.userID = tblUsers_imail.sender "&_
   "WHERE Reciever="& UserID &" order by mailID desc "&sqlStr[/B]
  
	end if

Här listas alla meddelanden, koden ovan är från paging.asp

<!--#include virtual="/mail/paging.asp"-->

   <tr height="10" style=" onMouseOver="this.style.backgroundColor='#ffad8c';" onMouseOut="this.style.backgroundColor='#FFFFFF';">  
		<td width="40">
			<%if CBool(objRs("mailRead")) then%>
				<img title="Det här PM-et är oläst" border="0" src="/images/icons/email.gif">
			<%end if%>
		</td>
		<td width="150"><a class="menu" target="_top" href="/view.asp?userID=<%=objRs("sender")%>"><%=objRs("username")%></a></td>
        <td width="100"><span class="presentation1"><%=right(replace(objRs("mailDate"),"-",""),6)%>&nbsp;<%=left(objRs("mailTime"),5)%></span></td>
        <!--<td width="450"><a <%=linkmessage%> class="menu" href="lasIn.asp?sender=<%=objRs("sender")%>&mailID=<%=objRs("mailID")%>&name=<%=objRs("username")%>"><%If objRs("Headline") = "" Then%><%=objRs("mailDate")%><%Else%><%=objRs("Headline")%><%End if%></a></td>-->
		<td width="450"><a class="menu" href="lasIn.asp?mailID=<%=objRs("mailID")%>&s=<%=objRs("sender")%>"><%If objRs("Headline") = "" Then%><%=objRs("mailDate")%><%Else%><%=left(objRs("Headline"),50)%><%End if%></a></td>
        <td width="90" valign="top"><input class="checkbox" type="checkbox" name="erase" value="<%=objRs("mailID")%>">
<%if objRs("saveMail") = 1 then%>&nbsp;<span class="presentation">Sparat</span>&nbsp;<%end if%></td>

<!--#include virtual="/mail/endPaging.asp"-->
Medlem sedan feb. 20011 198 inlägg
#2

Skriv ut sql frågan så du ser att den är rätt.

Medlem sedan juni 20003 076 inlägg
#3
SELECT mailRead, username, mailDate, mailTime, sender, Headline, visaNyhetsbrev, message, mailID,Reciever, vip, saveMail "&_
    "FROM tblUsers [b]INNER JOIN tblUsers_imail ON tblUsers.userID = tblUsers_imail.sender[/b] "&_
   "WHERE Reciever="& UserID &" order by mailID desc

Har det funkat så har det ju funkat men joinen känns konstig.
Du joinar tblUsers.userid med tblUsers_imail.sender dvs. avsändare va? Det borde väl vara typ tblUsers_imail.Reciver eller har jag missuppfattat dina kolumnnamn?! :)

Medlem sedan feb. 20032 027 inlägg
#4

doggelito skrev:

SELECT mailRead, username, mailDate, mailTime, sender, Headline, visaNyhetsbrev, message, mailID,Reciever, vip, saveMail "&_
    "FROM tblUsers [b]INNER JOIN tblUsers_imail ON tblUsers.userID = tblUsers_imail.sender[/b] "&_
   "WHERE Reciever="& UserID &" order by mailID desc

Har det funkat så har det ju funkat men joinen känns konstig.
Du joinar tblUsers.userid med tblUsers_imail.sender dvs. avsändare va? Det borde väl vara typ tblUsers_imail.Reciver eller har jag missuppfattat dina kolumnnamn?! :)

har jag sender så ser jag bara alla brev från mig som jag har skickat och inte de jag har fått från andra som det ska vara

Medlem sedan feb. 20032 027 inlägg
#5

för en del så visas inte breven och bara indikeras, för mig ex så båder ser jag dem och indikeringen, när ett brev kommer så ska det ju visas från databasen, inga ska ju döljas

Medlem sedan juni 200032 967 inlägg
#6

har jag sender så ser jag bara alla brev från mig som jag har skickat och inte de jag har fått från andra som det ska vara

Ja, och det är ju det doggelito påpekar. Läs igen det han skriver.

Medlem sedan feb. 20032 027 inlägg
#7

@nders skrev:

har jag sender så ser jag bara alla brev från mig som jag har skickat och inte de jag har fått från andra som det ska vara

Ja, och det är ju det doggelito påpekar. Läs igen det han skriver.

när jag gjorde som doggelito sa så ändras bara från den som har skickat till mitt alias, dvs står bara mitt alias aom användare när jag är mottagare

Medlem sedan juni 200032 967 inlägg
#8

Ok, det kanske är jag som missuppfattar i hastigheten. :)

Medlem sedan feb. 20032 027 inlägg
#9

det vore som om dogge skickar till mig här och att istället för att han står som avsändare så står mitt alias som avsändare till mig själv när jag gör hans ändring.

Databasen loopar ut ALLA brev till rätt Reciever
UserID är värde från kakan som skapas vid inloggning <-- då strular det vid mailen
Session("userID") ger precis samma strul med att inte breven visas för vissa

Finns det nåt sätt att säkerhetsställa att breven visas, Skickar med bild på att denna medlem HAR fått breven.....de syns bara inte

imail.jpg
Medlem sedan feb. 20032 027 inlägg
#10

har letat och letat och fattar inte varför bara vissa medlemmar kan läsa sina brev

Medlem sedan dec. 19996 721 inlägg
#11

yohpops skrev:

Skriv ut sql frågan så du ser att den är rätt.

Nå, hur ser den ut?

Medlem sedan feb. 20032 027 inlägg
#12

emission skrev:

Nå, hur ser den ut?

SELECT mailRead, username, mailDate, mailTime, sender, Headline, visaNyhetsbrev, message, mailID,Reciever, vip, saveMail FROM tblUsers INNER JOIN tblUsers_imail ON tblUsers.userID = tblUsers_imail.sender WHERE Reciever=1 order by mailID desc limit 1000

felet verkar ligga vid den fetmarkerade texten men jag vet inte hur det ska lösas

[B]if vipCheck.eof then
   response.write "&nbsp;"
else[/B]
 if cint(vipCheck("VIP")) = 1 then
       sqlStr = "limit 1000"
   else
       sqlStr = "limit 100"
   end if
    strSQL = "SELECT mailRead, username, mailDate, mailTime, sender, Headline, visaNyhetsbrev, message, mailID,Reciever, vip, saveMail "&_
    "FROM tblUsers INNER JOIN tblUsers_imail ON tblUsers.userID = tblUsers_imail.sender "&_
   "WHERE Reciever="& UserID &" order by mailID desc "&sqlStr
  
	end if
Medlem sedan feb. 20032 027 inlägg
#13

jag hittade felet vipCheck slulle bara ändras till

set vipCheck=objConn.Execute("SELECT vip, userID FROM tblUsers WHERE userID="& Session("userID"))

265 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)