mmm...comincio a capire...ma se fai 2 select distinte non ti semplifichi la vita?
mmm...comincio a capire...ma se fai 2 select distinte non ti semplifichi la vita?
La passera non dura perchè Sypher la cattura!
"No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"
Ciao! Come hai passato il fine settimana?
Scusami se ti ho risposto solo adesso, ma mi sono riconnesso solamente adesso.
Facendo due select distinte cosa cambia? Ho provato scrivendo così:
codice:set oRs= Server.CreateObject("ADODB.Recordset") strsql="SELECT msgPvt.usernameAutore, msgPvt.usernameDestinatario, msgpvt.idAutore, msgpvt.idDestinatario FROM msgPvt WHERE msgPvt.idDestinatario="& Session("ID_access") & " or msgPvt.idAutore="& Session("ID_access")&" GROUP BY msgPvt.usernameAutore, msgPvt.usernameDestinatario, msgPvt.idAutore, msgPvt.idDestinatario" oRs.Open strsql, Conne questo è il response.write che utilizzo per vedere gli username (forse questo dovrei cambiarlo)codice:set oRs2= Server.CreateObject("ADODB.Recordset") strsql="SELECT msgPvt.usernameAutore, msgPvt.usernameDestinatario, msgpvt.idAutore, msgpvt.idDestinatario FROM msgPvt WHERE msgPvt.idAutore="& Session("ID_access")&" GROUP BY msgPvt.usernameAutore, msgPvt.usernameDestinatario, msgPvt.idAutore, msgPvt.idDestinatario" oRs2.Open strsql, Conn
Però ho sempre lo stesso problema, compare due volte il l'usernmae della persona con cui ho corrispondenza...codice:<% if oRs("idAutore")=Session("ID_access") Then Response.Write "<a href=SchedaDettaglio.asp?ID=" & (oRs.Fields.Item ("idDestinatario").Value) & ">" & (oRs.Fields.Item("usernameDestinatario").Value) & "</a>" else Response.Write "<a href=Schedadettaglio.asp?id=" & (oRs.Fields.Item("idAutore").Value) & ">" & (oRs.Fields.Item("usernameAutore").Value) & "</a>"%>
Avevi un'altra idea?
hai provato con select distinct?
SI
ho provato così (non so se è giusta la procedura)
è giusta?codice:strsql="SELECT DISTINCT msgPvt.usernameAutore, msgpvt.idAutore, msgpvt.idDestinatario FROM msgPvt WHERE msgPvt.idDestinatario="& Session("ID_access")&" order by msgPvt.usernameAutore"
allora, per avere le persone che ci hanno scritto almeno una volta (mi par di capire che vuoi questo)
poi per avere tutti i destinatari ai quali noi abbiamo scritto almeno una volta.codice:strsql="SELECT DISTINCT msgPvt.usernamedestinatario, msgpvt.idDestinatario FROM msgPvt WHERE msgPvt.idDestinatario ="& Session("ID_access")&" order by msgPvt.usernamedestinatario"
se non ho errato qualcosa...codice:strsql="SELECT DISTINCT msgPvt.usernamedestinatario, msgpvt.idDestinatario FROM msgPvt WHERE msgPvt.idAutore="& Session("ID_access")&" order by msgPvt.usernamedestinatario"
Grazie per il tuo aiutone...
Come posso modificare la risposta a video degli username...
Prima avevo questo response.write:
codice:<% if oRs("idAutore")=Session("ID_access") Then Response.Write "<a href=SchedaDettaglio.asp?ID=" & (oRs2.Fields.Item ("idDestinatario").Value) & ">" & (oRs2.Fields.Item("usernameDestinatario").Value) & "</a>" else Response.Write "<a href=Schedadettaglio.asp?id=" & (oRs.Fields.Item("idAutore").Value) & ">" & (oRs.Fields.Item("usernameAutore").Value) & "</a>"%>
Allora...
ho modificato la select così perchè devo leggere il nome dell'Autore.
Per riportare a video ho scritto così:codice:strsql="SELECT DISTINCT msgPvt.usernameAutore, msgpvt.idAutore FROM msgPvt WHERE msgPvt.idDestinatario="& Session("ID_access")&" order by msgPvt.usernameAutore"
Il problema che mi servirebbe un if nel response write ovvero:codice:<% Response.Write oRs("usernameAutore") %>
se la select oRs("usernameAutore") è vuota far vedere oRs2("usernameDestinatario")...
come si fa?
codice:if oRs.eof then 'codice per quando è vuota else 'codice per quando è piena end if
![]()
Sembra funzionare
GRAZIE
Cantato vittoria troppo in fretta...
Mi da un problema se uso quest'altro comando:
...codice:<%if not oRs.eof then%> <table width="95%" border="1" align="center" cellpadding="2" cellspacing="5" bordercolor="#FFF8E8" <%while not oRs.EOF%>
...codice:<% oRs.MoveNext wend %>
Se levo questo comando funziona correttamente anche se mi ha scritto solo una persona e io non ho risposto... però se scrivo a più persone leggo solamente il nome della prima persona
Se invece lascio questo comando non funziona più il comando
ovvero se ho scritto solo io a una persona senza aver risposta non mi fa visualizzare nulla!codice:<% if oRs.eof then Response.Write oRs2("usernameDestinatario") else Response.Write oRs("usernameAutore") end if %>
Come si fa?