2017-01-10 5 views
0

私はこれまでに試したことのコードを投稿するべきであることを知っています。私は本当にどこから始めるべきかわかりません。ですから、現時点では2つのmysqli文が動作していますが、どのように組み合わせるかはわかりません。他のテーブルの値が特定の値と等しい場合、mysqliから選択する方法は?

私は2つのテーブルを持っています。私は、ページネーションのため$offset$items_per_pageを使用

$sql_ONE = mysqli_query($mysqli, "SELECT * FROM todo WHERE status='open' ORDER BY date ASC LIMIT " . $offset . "," . $items_per_page); 
$sql_TWO = mysqli_query($mysqli, "SELECT * FROM permission WHERE memberID=$memberID AND allowed='yes'"); 

しかし、ここでは、メンバーのリスト、メンバーID、および最初のステートメントから行が表示される可能性のある値(はい/いいえ)を含む2番目のテーブルがあります。したがって、最初のmysqli-statementでは、status = openの行がすべて選択されます。この行が画面に表示される前に、PHPはそのページにいるメンバーに表示されるかどうかをチェックする必要があります。したがって、allow = yesの場合にのみ表示する必要があります。

私はそれらを1つのテーブルに入れることは望ましくありません。

これらの2つのテーブルを組み合わせて画面に表示するにはどうすればいいですか?

私はあなたのデータベースについて正確に知っているが、これまでのところ、私はこの

SELECT todo.ID 
FROM todo 
LEFT JOIN permission 
ON todo.ID=permission.ID 
where permission.allowed='Yes' AND permission.memberID=$memberID 

それは二つのテーブル「TODO」と「perrmission」を参加するともとに「TODO」のIDを返しますが派生している理解していけない

+0

どの属性に参加しますか? –

+0

sql_ONEのIDが必要です。 memberIDはすでにユーザーログイン時に設定されています。したがって、sql_TWOでは、 "allowed"の値がyesまたはnoに設定されているかどうかを確認する必要があります(ID = ID(sql_ONE)およびmemberID = $ memberID)。 –

+0

次に、value = yesの場合、value = noの場合、sql_ONEのすべてのコンテンツが画面 –

答えて

0

条件の許可表から

関連する問題