Вместо того, чтобы получать данные из DOC_PROGRESS
таблица, он продолжает извлекать данные из DOCUMENT
ТАБЛИЦА. Мне нужны данные из обеих таблиц, но я думаю, что я делаю это неправильно. Кстати, мой запрос ниже. Помоги мне, пожалуйста.
("SELECT * FROM document AS dd JOIN doc_progress AS dp ON dd.p_id = dp.p_id WHERE (dd.p_id = '".$_SESSION['currentUser']."') AND (dp.progress = 'Read')");
<?php
$select1 = "SELECT * FROM doc_progress AS dp JOIN document AS dd ON dd.p_id = dp.p_id WHERE (dd.p_id = '".$_SESSION['currentUser']."') AND (dp.progress = 'Unread')";
$sql= mysql_query($select1) or die (mysql_error());
while($row2 = mysql_fetch_array($sql)){
?>
<tr class="odd gradeX">
<td><?php echo $row2['date_created'] ?></td>
<td><a href=""><?php
echo "<b>" . $row2['doc_title']. "</b>"; ?></a></td>
<td> <?php
echo $row2['status'] ?></td>
<td> <?php
echo $row2['progress']; ?></td>
<td> <?php echo $row2['time_created']; ?></td>
</tr>
Использовать этот
("SELECT DD.*, DP.* FROM document DD INNER JOIN doc_progress DP ON DD.p_id = DP.p_id WHERE DD.p_id = '".$_SESSION['currentUser']."' AND DP.progress = 'Read'");
Первая часть вашего запроса запрашивает столбцы, которые вы хотите из базы данных. У вас сейчас есть;
SELECT * FROM document
так вот что ты получаешь.
Чтобы выбрать все столбцы из объединенных таблиц, вы можете использовать;
SELECT * FROM document, doc_progress
но вам может быть лучше выбрать определенные столбцы, такие как;
SELECT document.colname1, document.colname2, doc_progress.colname FROM document
Надеюсь это поможет.
Почему вы используете DOCUMENT
таблица в выражении FROM, если вы хотите выбрать данные из DOC_PROGRESS?
Попробуй это:
'SELECT DP.*
FROM doc_progress DP
INNER JOIN document DOC ON DOC.p_id = DP.p_id
WHERE
DOC.p_id = ' . $_SESSION['currentUser'] . 'AND
DP.progress = \'Read\'';