2016-03-23 14 views
0

すべてのデータの品種、コスト、連絡先番号を1つの大きな塊に表示しています。私が望むテーブルのフォーマットは下にありますが、各犬は他のすべての所有者にリストされ、他のすべての列は空白です。表示リリース日ありえないが、私はExcelシートからデータをインポートし、日付が間違った形式で、私はそれを更新した複数のテーブルを照会すると、エラーが表示されます

EDIT

たときから問題厥思う:

while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) { 
     echo '<tr><td>' . $row['Dog_name'] . '</td><td>' . $row['owner_name'] . '</td><td>' . $row['vet_Date'] . 
    '</td><td>' . $row['Breed'] . '</td><td> ' . $row['cost'] . '</td><td> '. $row['address'] . '</td><td> ' . $row['contact_number'] . '</td></tr> '; 
} 

これはbeginnignで全面的な混乱を止め、すべてのデータがテーブルでフォーマットされました。しかし、各犬はまだ各単一の所有者と一致しています。このポストやデータベースのコードでこれが問題になっていますか?私は2つのテーブルから選択する二つのテーブル

$q = "SELECT dog_name, owner_name, vet_date, Breed, cost, address, contact_number 
     FROM owner o 
     LEFT JOIN dogs d ON o.id = d.owner_id 
     ORDER BY d.dog_name ASC";  
// make sure you join on valid columns. 
// also, if there is a column that appears in both tables, 
// to avoid ambiguity, prefix it with the corresponding table alias 
$r = @mysqli_query ($dbc, $q); 

echo "<table> 
    <tr> 
    // skipping this so it doesn't eat up too much space 
    </tr>"; 

// also, every `$row[something]` should be placed inside a `<td></td>`, like so: 
while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) { 
    echo '<tr> 
      <td>' . $row['Dog_name'] . '</td> 
      <td>' . $row['owner_name'] . '</td> 
      <td>' . $row['vet_Date'] . '</td> 
      <td>' . $row['Breed'] . '</td> 
      <td>' . $row['cost'] . '</td> 
      <td>' . $row['address'] . '</td> 
      <td>' . $row['contact_number'] . '</td> 
     </tr> '; 
} 

に参加する必要があると思う

+2

最後の1つの – cmorrissey

+0

エコー '​​'を除いて '​​' ''にターン ''''。 $ row ['Dog_name']。 '​​'。 $ row ['owner_name']。 '​​'。 $ row ['vet_Date']。 ''。 $ row ['Breed']。 ''。 $行['コスト']。 ''。 $行['アドレス']。 ''。 $ row ['contact_number']。 ''; 私はそれを更新しました。変更はありません –

+0

私には更新されていません、また編集して元の投稿にあなたの更新を投稿してください。 – cmorrissey

答えて

0

は、それらの間のデカルト積の原因となります。
joinを使用すると、対応する行だけが表示されます(ON句に従います)。

joinを使用すると、FROM owner, dogsを使用すると、あなたの後ろのものではないかもしれない各所有者のすべての犬を得ることができます。

+0

にお返事いただきありがとうございます。私は複数のドロップダウンを実装するつもりです。あなたが投稿したものをいくつか使っていきます。しかし、私は私たちがすべての犬を見ることを可能にする所有者のドロップダウンを持つことが有用であると思う。ので、からのものを使用してください。これはjoinの使用とどのように違うのですか? –

+0

これをイントロとして参照してください:https://en.wikipedia.org/wiki/Join_(SQL) 'a join b 'と' from a、b'の違いを説明しています –

+0

私は今それを見て、私の前にSQLの本を持っています。 dとoのエイリアスを作成するときにASを使用しない理由は何ですか?それは単に不必要なことですか? –

関連する問題