2012-03-20 41 views
0

任何人都可以幫我這個,我這裏有狀態爲0,現在的狀態1PHP:添加狀態2

狀態0:不是我的朋友

狀態1:我的朋友

我需要

狀態2:添加到好友列表(我們發送好友請求,但行狀態爲0)

請檢查查詢波紋管......

<? 
$query = "SELECT * 
      FROM friends 
      WHERE (idusers={$_SESSION[userid]} 
       AND idusers_friend={$row[ID]}) 
       AND status='1' OR (idusers={$row[ID]} 
       AND idusers_friend={$_SESSION[userid]} 
       AND status='1')"; 
$result = mysql_query($query); 
$check_exist = mysql_num_rows($result); 
if($check_exist >= 1) { ?> 

STATUS 1 - SEND A MESSSAGES (friend) 

<? } elseif($check_exist == 0) { ?> 

STATUS 0 - ADD AS FRIND (not friend) 

<? } ?> 

我現在需要什麼,我需要有狀態2,上面的例子可以看到,現在的IM讓用戶是否是我的FRIND我可以發送郵件對這個用戶,不是在我的朋友列表中,我有按鈕來添加它,但是當我點擊添加作爲朋友發送請求(類似於facebook上的),而這是狀態2,等待接受。

例子:如果我有這樣的用戶在數據庫中我FRIND狀態爲1,是不是在我的名單數據庫是空的,如果IM發送的請求行狀態是0和煥第二用戶接受請求的狀態將被更改爲1.

+1

爲了使這更清楚,而不是使用在1和0的幻數常量。 – 2012-03-20 13:41:31

+0

如果你很高興這個問題解決了,你應該接受一個答案。 – 2012-05-07 00:31:47

回答

0

試試這個(升技猜測你的DB模式 - 提供表的詳細信息,如果這不工作):

$query = "SELECT status 
      FROM friends 
      WHERE idusers={$_SESSION[userid]} 
      AND idusers_friend={$row[ID]} "; 

mysql_connect("hostname", "user", "password"); 
mysql_select_db("mydb"); 

$result = mysql_query($query); 

while ($row = mysql_fetch_object($result)) { 

    $status = $row->status; 

    switch ($status) { 

     case 0: 
      // STATUS 0 - ADD AS FRIEND (not friend) 
      break; 

     case 1: 
      // STATUS 1 - SEND A MESSAGE (friend) 
      break; 

     case 2: 
      // New status 
      break; 
    } 
} 
+0

你好,這不行,這是來自桌友的屏幕http://i.imgur.com/XhbcU.png – 2012-03-20 14:16:17

+0

你能發佈錯誤信息嗎? – 2012-03-20 16:07:01

+0

只有這個IM日誌中發現 '警告:mysql_fetch_object():提供的參數不是一個有效的MySQL result' – 2012-03-20 16:17:49