Toon posts:

Mysql vraagje over select

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben een uur aan het zoeken geweest in het forum maar kwam bij niets nuttigs uit, dus mijn vraag is hoe kan ik de laatste 4 toegevoegde rows weergeven uit een database ik heb dit geprobeer:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
mysql_connect("localhost","user","password");
mysql_query("use database");
$data=mysql_query("select * from table");
if ($data<"4"){
while($vierregels = mysql_fetch_row($data)){
?>
<a href="nieuws.php3?id=<? echo "$vierregels->id" ?>">
<?
echo "$vierregels->titel"
}
else {
$vierregels=($data - 4);
while($vierregels = mysql_fetch_row($data)){
?>
<a href="nieuws.php3?id=<? echo "$vierregels->id" ?>">
<?
echo "$vierregels->titel"
}
?>

Help :?

  • Nielsz
  • Registratie: Maart 2001
  • Niet online
select * from table order by id (of datum, verzinmaar wat) limit 0,4

Verwijderd

Topicstarter
bij limit haalt die dan bij 0,4 niet vanaf regel 1 vier regels op ?

  • Nielsz
  • Registratie: Maart 2001
  • Niet online
ja, maar als je order by datum DESC doet niet...


(jaja, was ik vergeten :) )

  • []InTeR[]
  • Registratie: Januari 2001
  • Laatst online: 31-12-2023
als je geen order wilt gebruiken,

$show = 4;
$query = "select count(*D n from tabel";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$aantal = $row["n"]-$show;

$query = "select * from tabel limit $aantal,$show";
$result = mysql_query($query);
while($row = mysql_Fetch_array($result))
{
enz.
}

Shit doesn't happen by it self, it's made by a arsehole.


Verwijderd

Of je teld eerst het aantal records met count.
En dan laat je gewoon de records count -4 zien enz.

Verwijderd

Topicstarter
Op dinsdag 18 september 2001 12:59 schreef interwork het volgende:
als je geen order wilt gebruiken,

$show = 4;
$query = "select count(*D n from tabel";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$aantal = $row["n"]-$show;

$query = "select * from tabel limit $aantal,$show";
$result = mysql_query($query);
while($row = mysql_Fetch_array($result))
{
enz.
}
Ok bedankt maar kan ik het dan ook zo maken ?
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
<?
$show = 4;
$query = "select count(id) from tabel";
$result = mysql_query($query);
$aantal = $result-$show;

$query = "select * from tabel limit $aantal,$show";
while($aantal = mysql_Fetch_array($query))
{
  enz.
}
?>

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 11:53

RM-rf

1 2 3 4 5 7 6 8 9

:? de 'laatste' 4 records van een database bestaan niet, misschien de laatste vier toegevoegde records (lastig of werken met timestamp, eventueel kun je als je integers als ID laat auto_incrementen soreteren daarop).

iig kun je enkel sorteren op een result, en op basis van dit result:
ofwel via LIMIT, of anders met mysql_data_seek de pointer in de resultlist verplaatsen (aantal results kun je opvragen met mysql_art_nums)

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen

Pagina: 1