2012-05-02 9 views
0

以下のコードは基本的に友人の検索エンジンとして動作します。あなたがあなたのアカウントを持っていないと誰かを追加することができます。だから、私は次のことをやろうとしています:存在すれば友人だけを表示し、そうでなければ友達を追加するべきです。なぜ私のクエリ結果は3回繰り返されますか?

私はそれが動作するようになったが、クエリの末尾には(このコメントを参照してください「//問題のコードを - 私はこの下に、このエコーを使用する場合には、3回繰り返さ場所」)私にそれが3を追加繰り返されるトラブルを与えています回。

<?php 
$num_rows1 = mysql_num_rows($result); 
if ($result == "") { 
    echo ""; 
} 
echo ""; 

$rows = mysql_num_rows($result); 
if ($rows == 0) { 
    print("<div id=norequests>No results for <strong>$q 
       </strong></div>"); 

} 
elseif ($rows > 0) { 
    while ($row = mysql_fetch_array($query)) 
    { 

     $person = htmlspecialchars($row['full_name']); 
     $linksys = htmlspecialchars($row['name']); 
     $pid  = htmlspecialchars($row['system_id']); 
    } 

    print(""); 
} 

} 


else{ 
    echo '<div id="error">No results.</div>'; 
} 

$sql = "SELECT `Friend_id` from `friends_container` 
       WHERE `System_id` = '$sid'"; 
$result = mysql_query($sql); 
$query = mysql_query($sql) or die("Error: " . mysql_error()); 

if ($result == "") { 
    echo ""; 
} 
echo ""; 

$rows = mysql_num_rows($result); 
if ($rows == 0) { 
    print(""); 

} 
elseif ($rows > 0) 
{ 
    while ($row = mysql_fetch_array($query)) 
    { 
     $existing = htmlspecialchars($row['Friend_id']); 
     if ($existing == $pid) { 
      echo("<img src=$linksys />$person - Already Existing"); 
     } 

     else 
      //Problem code - when i use this echo below this where it repeats 3 times 
     { 
      echo("Add $person"); 
     } 
    } 
?> 
+0

あなたはコードを整理しておく必要があります。制御構造内にインデントを付ける必要があります(if、whileなど)が良いスタートになります。 –

+0

コードを正しくフォーマットしてください。コードブロックは、任意のコード行の前に4つのスペースをインデントすることによって挿入されます。今回はコードをフォーマットしましたが、次回は正しくフォーマットしてください。さらに詳しいヘルプは、[編集に関するよくある質問](http://stackoverflow.com/editing-help#code) –

+0

をご覧ください。あなたは何を返そうとしていますか? –

答えて

1

あなたは3 imagesaccountのために保存されている必要があります。

あなたのクエリは常に複数結果になります。あなたがすべきことは、より良いオプションをもたらす何かに変換するためにphpを使うか、または便宜のために結果を配列に変換することです。

+0

私はそれが3回繰り返される理由は、テストアカウントに3人の友人しかいないからです。 – ariel

+0

返信後にコードを変更しました。クエリで左結合を使用していました!!!!!今私はあなたの質問を読まなければならない –

関連する問題