2017-09-10 25 views
0

我有一個用戶表(「usuarios」)和他們的朋友(「AMIGOS」)表,我想要做的是得到一個用戶ID的朋友,我沒有收到任何錯誤,但我看不出結果...這段代碼有什麼問題? LEFT OUTER JOIN

<?php 
    $host  = 'localhost'; 
    $username = 'root'; 
    $pwd  = ''; 
    $db  = "lyne"; 

    $con = mysqli_connect($host,$username,$pwd,$db) or die('Unable to connect'); 
    if(mysqli_connect_error($con)) { 
    echo "Failed to Connect to Database ".mysqli_connect_error(); 
    } 

    $id  = $_GET['prefID']; 
    $sql = "SELECT a.*, u.nome FROM AMIGOS a LEFT OUTER JOIN usuarios u ON(u.USU_ID = a.usuario_dois) WHERE usuario_um ='$id'"; 
    $result = mysqli_query($con,$sql); 

    if($result) { 
    while($row=mysqli_fetch_array($result)) { 
     $data[]=$row; 
    } 
    print(json_encode($data)); 
    }  

    mysqli_close($con); 
?> 

我只是得到一個空白屏幕(我只是用GET測試,將POST完成時)對不起,我不好工程

+0

您的代碼易受SQL注入攻擊,您需要修復此問題。 – Enstage

+0

Thx對於這個建議,但這只是我的大學,但如果我有足夠的時間,我一定會解決這個問題。 – Higor

+0

只需簡單地添加'$ id =(int)$ _ GET ['prefID'];'如果ID是數字。但你真的應該使用準備好的陳述,而不是任何藉口。 – Enstage

回答

0

解決,問題是不是代碼。在我的用戶列表中,我有一些名字上帶有口音的人,比如「André」,當用戶是其中一個人的朋友時,根本就不工作,我不知道爲什麼。而已。

+0

你的編碼可能有問題,檢查你在任何地方都使用相同的編碼(UTF-8是最好的選擇) –

+0

我會這樣做,如果我修好了,我會在這裏發帖。 – Higor