Jump to content
php.lv forumi

Recommended Posts

Posted

Sveiki!

 

Kā lai uztaisa tādu skriptu, kas parāda 6. ierakstus no db līdz, ko rodas 7. ieraksts pēdējais no ierakstiem tiek izdzēsts un parādās jaunais ieraksts viņa vietā. Tāda kā čata funkcija ar max 6. redzemiem ierakstiem. Vēl, kas tie ieraksti nerādas dabiskā secībā piemēram testēju ierakstot ciparus no 1-7 katru atsevišķi, bet viņi tika parādīti jauktā secībā.

Pašreizējais skripts, kas parāda tikai info no db.

Posted (edited)

varbūt kas šāds:

 

DELETE FROM table WHERE id > (SELECT id FROM table ORDER BY id LIMIT 5, 1);

 

Vari arī pamēģināt vienkārši, bet nezin vai tas strādās:

 

DELETE FROM table ORDER BY id LIMIT 5,1

Edited by martins256
Posted (edited)
. Vēl, kas tie ieraksti nerādas dabiskā secībā piemēram testēju ierakstot ciparus no 1-7 katru atsevišķi, bet viņi tika parādīti jauktā secībā.

tieshi otraadi vinji tika paraadiiti dabiskaa seciibaa , tb. secibaa kaa vinji glabajas DB ...

lai izvadiitu kaada noteiktaa kartiibaa izmanto

SELECT * FROM tabulis ORDER BY lauks_pec_ka_kartot DESC (vai ASC)

Edited by Grey_Wolf
Posted

Vai Tev datuma lauka tajā tabulā nav?

Ja ir, tad vaicājums varētu būt šitāds:

DELETE FROM tabula WHERE datuma_lauks < (SELECT MIN(datuma_lauks) FROM tabula ORDER BY datuma_lauks LIMIT 7 )

Posted

nav vieglaak raadiit peedeejos 6 ierakstus ?

select * from table order by id desc LIMIT 6

vai arii ja gribi dzeest tad var:

select * from table order by id desc LIMIT 6

un te dabuu peedeejos 6 id

delete from table where id not in (1,2,3,4,5,6)

Posted

Klez, tad jāpiedomā kā garantēt, ka vajadzīgie id vienmēr robežās no 1-6.

Sanāk, ka pirms jauno ievieto ar id=1, izpilda UPDATE tabula SET id=id+1.

Posted

Der arī, ka nevis izdzēš, bet vienkārši nerāda, bet nu man tā likās parocīgāk, ka vecāko ierakstu izdzēš, lai parādītos jaunākais. :)

Posted

Nu ar čatiem neesmu nekāds iesācējs....

Lai gan liela atšķirība no viesu grāmatas, kuru negrib lai piespamo nebūs.

Parasti gan es atstāju arī čata vēsturei kādus 100 ierakstus lai ienākot kādam naktī ir ko palasīt.

Rādi tik, cik vajag vienā čatā tos ierakstus.

Parasti tam izmanto LIMIT un ORDER by laiks.

Posted

Aleksejs, tur bija domaats shitaa: (neskaidri izteicos ...)

<?php
$all = mysql_query("select * from table order by id desc LIMIT 6");
while ($one = mysql_fetch_row($all))
{
$idi[] = $one[0];
}
mysql_query("DELETE FROM table WHERE id NOT in(".implode(",", $idi).")");
?>

×
×
  • Create New...