2 SQL_QUERYS in 1
Ik heb een tabel waar een nieuws-bericht in staat.
Ik heb een andere tabel waar de reacties op dit nieuws bericht staan.
Echter hoe kan ik de reacties uit tabel: news_reactions tellen terwijl ik hem wil tellen in de query van de tabel: news..
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
$sql_news = mysql_query("SELECT * FROM news ORDER BY id DESC LIMIT 2");
$count = mysql_num_rows($sql_news);
while($row_news = mysql_fetch_array($sql_news)) {
$text = $row_news['content'];
$text = nl2br($text);
$text = stripslashes($text);
$subject = $row_news['subject'];
$subject = eregi_replace(" ", "+", $subject);
$text = substr($text, 0, 175) . "...";
echo $row_news['date'] . " <img src='images/stripes.gif' />
<a href='index.php?page=news&category=".$subject."'>" . $row_news['subject'] . "</a> <img src='images/stripes.gif' />
<a href='index.php?page=news&id=".$row_news['id']."'>Reactions (HOE COUNT IK HIER DE ANDERE REAKTIES UIT TABEL news_reactions?)</a><br />";
echo "<br />";
echo $text;
echo "<br />";
echo "<br />";
echo "<div align='right'><a href='index.php?page=news&id=" . $row_news['id'] . "'>Read more</a>...</div>";
echo "<hr class='content_hr' />";
}
?>
$sql_news = mysql_query("SELECT * FROM news ORDER BY id DESC LIMIT 2");
$count = mysql_num_rows($sql_news);
while($row_news = mysql_fetch_array($sql_news)) {
$text = $row_news['content'];
$text = nl2br($text);
$text = stripslashes($text);
$subject = $row_news['subject'];
$subject = eregi_replace(" ", "+", $subject);
$text = substr($text, 0, 175) . "...";
echo $row_news['date'] . " <img src='images/stripes.gif' />
<a href='index.php?page=news&category=".$subject."'>" . $row_news['subject'] . "</a> <img src='images/stripes.gif' />
<a href='index.php?page=news&id=".$row_news['id']."'>Reactions (HOE COUNT IK HIER DE ANDERE REAKTIES UIT TABEL news_reactions?)</a><br />";
echo "<br />";
echo $text;
echo "<br />";
echo "<br />";
echo "<div align='right'><a href='index.php?page=news&id=" . $row_news['id'] . "'>Read more</a>...</div>";
echo "<hr class='content_hr' />";
}
?>
Waar nu staat; HOE COUNT IK HIER DE ANDERE REAKTIES UIT TABEL news_reactions?
Hoe kan ik daar tellen hoeveel berichten er staan onder het id van het bericht en uit tabel news_reacties?
Alvast bedankt!
vervang "HOE COUNT IK HIER DE ANDERE REAKTIES UIT TABEL news_reactions"
met
SELECT n.title, COUNT(nr.id_news) AS totalReactions FROM news AS n RIGHT JOIN news_reacties AS nr ON (n.id_news=nr) GROUP BY nr.id_news
Maar kies voor Nederlands of Engels, niet beide.
Maar op dit moment doe ik ff beiden, als m'n site af is verander ik alle waardes nog om:P
Mijn manier van werken, 't is het moment =)
Nu beide manieren proberen =)!
Ik heb in de tabel news_reacties meerdere reacties op elk nieuws.
Dus dat zou betekenen dat hij alle reacties uit de tabel haalt.
Hoe sorteer ik alleen op het ID van het bericht?
Code (php)
1
2
3
2
3
<?php
mysql_num_rows(mysql_query("SELECT * FROM news_reactions WHERE newsID='".$row_news['newsID']."'"));
?>
mysql_num_rows(mysql_query("SELECT * FROM news_reactions WHERE newsID='".$row_news['newsID']."'"));
?>
of hoe je newsID ook maar heet :D
Het id van het news staat ook in de tabel: news_reactions.
dit zijn mijn tabellen:
Tabel: News
+----------------+
| id |
| updatetime |
| subject |
| creator |
| time |
| date |
| content |
+----------------+
Tabel: News_reactions
+----------------+
| id_reaction |
| id_news |
| user |
| time |
| date |
| content |
+----------------+
Dus timen, als ik dat van jou gebruikt zal het niet lukken.
je gebruikt nog geen 5 tekens voor "REACTIES()" ook het zelfde news ID:P
Gewijzigd op 01/01/1970 01:00:00 door Timen kut
Aha, probleem opgelost, je had gelijk, had iets verkeerd gedaan ><!