2011-08-21 71 views
0

希望你能幫助我在這裏,我已經試圖整天搞定這一個。PHP朋友添加系統無法正常工作

我有一個朋友,系統和一些用戶,他們可以添加對方,這完美的作品,但問題是,他們可以加對方,曾多次..

繼承人我的腳本來檢查,如果他們已經是朋友..

,但它不工作:(

<? 
// connect Databasen 
include('connect.php'); 
//hvis get bruger ikke er tom 
if (!empty($_GET["bruger"])) { 
//tjeker om venner er anøsgt i forvejen 
$bruger = $_SESSION['username']; 
$ven = $_GET["bruger"]; 
$tjek = mysql_query("SELECT * FROM venner WHERE username='$bruger' AND ven='$ven'"); 
if ($tjek) { 
//indsæt 
mysql_query("INSERT INTO venner VALUES('','$bruger','$ven','','nej')"); 
echo "venskab er ansøgt"; 
exit; 
} 
else { 
echo "Du har allerede ansøgt"; 
} 
} 
?> 
+4

我聞到SQL注入。 – ThiefMaster

+1

心靈翻譯的名字,以便我們可以瞭解發生了什麼? – Dani

+0

看完這個問題後還有誰想要漢堡? –

回答

6

最簡單的解決方案是創建於文納唯一索引:

CREATE UNIQUE INDEX akVenner (username, ven) ON venner; 
1

你應該使用:

if (mysql_num_rows($tjek) == 0) { 
    INSERT SOMETHING 
} else { 
    DOING SOMETHING 
} 

不要忘記使用轉義輸入數據,以避免SQL注入。

1

你需要找到的兩種形式的關係,不管是誰創造了它的:

$tjek = mysql_query("SELECT * FROM venner 
    WHERE (username='$bruger' AND ven='$ven') OR 
    (username='$ven' AND ven='$bruger')"); 

if (mysql_num_rows($tjek)==0) { 
+0

不工作...:/ – Patrick

+1

會發生什麼?向你顯示任何錯誤? –