ik ben bezig met een webpagina waar verschillende mensen hun nieuws op moeten / kunnen plaatsen. Nu vraag ik me af of ik in php een select kan gebruiken om de laatste bv. 5 berichten weer te geven? of moet ik dan aan een hele andere richting denken?
LIMIT 0, 5 zorgt voor de laatste 5 berichten in een resultset en je kan ook de volgorde van de nieuwsberichten kiezen met ORDER BY, zodat je de laatste 5 berichten krijgt.
Skat! Skat! Skat!
Verwijderd
als je MySQL gebruikt kan je gewoon doen (ongeveer):
SELECT * FROM news ORDER BY newsID DESC LIMIT 0,5
Dan krijg je de nieuwste bovenaan, en je krijgt de nieuwste 5 berichten
SELECT * FROM news ORDER BY newsID DESC LIMIT 0,5
Dan krijg je de nieuwste bovenaan, en je krijgt de nieuwste 5 berichten
das handig..... maar hoe krijg je deze 1 voor 1 op het scherm en niet direct onder elkaar (probeer ze in een table te krijgen, maar dan krijg je telkens het laatste bericht)
dan moet je met een lus de resultaten doorlopen:
grtz Koen
PHP:
1
2
3
4
5
| $q = mysql_query("Hier je query"); while($record = mysql_fetch_array($q)) { echo $record["nieuws"]."<br />"; } |
grtz Koen
Parse error: syntax error, unexpected GOT_USER in https://gathering.tweakers.net on line 1337
Verwijderd
Als je het echt in een tabel wil zou ik het zo doen:
PHP:
1
2
3
4
5
6
7
8
9
10
| <table border="..."> <tr> <? $res = mysql_query("SELECT ... FROM ... ORDER BY ... LIMIT 0,5", $sql); while ($row=mysql_fetch_assoc($res)) { $nieuws = $row["nieuws"]; ?> <td><?=$nieuws;?></td> <? } ?> </tr> </table> |
[quote]Verwijderd schreef op 15 december 2003 @ 19:23:
quote]
als ik dat doe .. komen ze achter elkaar zie:
http://www.dirco.nl/database/index.php
zie code
quote]
als ik dat doe .. komen ze achter elkaar zie:
http://www.dirco.nl/database/index.php
zie code
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| <table border="0" cellspacing="0" cellpadding="0" width="400">
<tr bgcolor="#9999cc" width="400">
<?
include("dbconnect.php");
$result = mysql_query("SELECT * FROM dirco ORDER
BY head DESC LIMIT 0,5") or die (mysql_error());
while ($row = mysql_fetch_assoc($result))
{ $head = $row["head"];
?>
<td class="menuhead">
<?
echo $head
?>
</td>
<?
}
?>
</tr>
</table> |
[ Voor 69% gewijzigd door Verwijderd op 15-12-2003 20:01 ]
Verwijderd
oeps, dit moet je echte code zijn :
ps: waarom doe je PHP als je HTML (blijkbaar) niet kent?
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| <table border="0" cellspacing="0" cellpadding="0" width="400">
<?
include("dbconnect.php");
$result = mysql_query("SELECT * FROM dirco ORDER
BY head DESC LIMIT 0,5") or die (mysql_error());
while ($row = mysql_fetch_assoc($result))
{ $head = $row["head"];
?>
<tr bgcolor="#9999cc" width="400">
<td class="menuhead">
<?
echo $head
?>
</td>
</tr>
<?
}
?>
</table> |
ps: waarom doe je PHP als je HTML (blijkbaar) niet kent?
Dat komt om dat je <tr> niet in de loop hebt staanVerwijderd schreef op 15 december 2003 @ 20:00:
[...]
als ik dat doe .. komen ze achter elkaar zie:
http://www.dirco.nl/database/index.php
*knip*
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
| echo "<table>\n"; $result = mysql_query(".."); while ($row = mysql_fetch_assoc($result)) { echo "<tr>\n" ."<td class=\"head\">". $row["head"]."<td>\n" ."</tr>\n" ; } echo "</table>\n"; |
Je coding style mag ook wel wat netter imo.
Pagina: 1