Well
That was indeed what I was searching for but. If I read it out loud, I
think with this query I only check if the current user is still onlien
and not his conversation partner.
In the chat table is store the session_id's of both the chatters of the
conversation.
There is no way to tell if $thisuser is the user1_sessionid record or
user2_sessionid record. So I check them both.
After that I have all results where (user1_sessionid record = $thisuser
or user2_sessionid record = $thisuser) I need to get the other field.
In the first case the users of which the time needs to be checked is
user2_sessionid, in the second case user1_sessionid.
So something like:
select * from chat c1,
chat_online c2
where
UNIX_TIMESTAMP(c2.activity)>=$limit_time and
c2.session_id = (c2.user1_sessionid if (c1.user1_sessionid =
$thisuser)) or (c2.user1_sessionid if(c1.user2_sessionid = $thisuser));
Can I do something like this?
>>-----Original Message-----
>>From: Ligaya Turmelle [mailto:[EMAIL PROTECTED]
>>Sent: zondag 28 november 2004 2:25
>>To: [EMAIL PROTECTED]
>>Cc: [EMAIL PROTECTED]
>>Subject: Re: [PHP] mysql query with exclude
>>Sounds like you need a join. Maybe something like:
>>
>>select * from chat c1,
>> chat_online c2
>>where
>> UNIX_TIMESTAMP(c2.activity)=$limit_time and
>> c2.session_id = $thisuser and
>> ((c1.user1_sessionid = $thisuser) or
>> c1.user2_sessionid = $thisuser));
>>Respectfully,
>>Ligaya Turmelle
>>Reinhart Viane wrote:
> Hey all,
>
> Hope you all have fun this saturday evening :)
> I'm sure i'm having fun except i'm kinda stuck...
>
> Ok here goes...
>
> I have 2 tables, one with the people online (chat_online): session_id
> activity
>
>
> And a second one where i keep the conversations between people(chat):
> user1_sessionid user2_sessionid
> chat_conv
>
> To see what chatter are still online during the last 2 minutes i do a
> check like this on the chat_online table: $limit_time= time()-130;
> $sqlchatonline="select * from chat_online where
UNIX_TIMESTAMP(activity)
>
>>=$limit_time";
>
>
> ok, on my page i also do a query to see what conversations are going
> on with the user: $thisuser=session_id();
> $getchatlist="select * from chat where (user1_sessionid=$thisuser) or
> (user2_sessionid=$thisuser)";
>
> This selects all the conversations which this user has been/or is
> into. I list all the chatpartners of thisuser. Off course it is
> possible that other chatters who had a conversation with this user are
> not online anymore. So i need to combine those two queries in a way...
>
> this is what i think it should be:
> $getchatlist=select * from chat where (user1_sessionid=$thisuser) or
> (user2_sessionid=$thisuser);
> $resultchatlist=mysql_query($getchatlist);
> while ($row=mysql_fetch_array($resultchatlist)) {
> get the second chattersessionid in each conversation and check
> if this chatter was still online in the last two minutes.
> if he is not, exclude him from the array and do not show him
> in the list (optional delete the record in the database) }
>
> or maybe i can combine those two queries in one?
>
> Can someone help me out on this?
>
> Thx in advance,
> Reinhart
>
>
>
>
>
> _____
>
> Reinhart Viane
> <mailto:[EMAIL PROTECTED]> [EMAIL PROTECTED]
> Domos || D-Studio
> Graaf Van Egmontstraat 15/3 -- B 2800 Mechelen -- tel +32 15 44 89 01
--
> fax +32 15 43 25 26
>
>
> STRICTLY PERSONAL AND CONFIDENTIAL
> This message may contain confidential and proprietary material for the
> sole use of the intended
> recipient. Any review or distribution by others is strictly
prohibited.
> If you are not the intended
> recipient please contact the sender and delete all copies.
>
>
>
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php