Граничен брой информация в базаданни

NevarMore

Registered
Здравейте, въпроса ми е как ще стане да имам проверка ако в таблицата ми примерно new има повече от 4тири новини и аз искам да въведа 5та да се изтрие последната вкарана и на нейното място да застане новата ... с прости думи да няма повече от 4тири резултата в една таблиза,но при добавянето на нова да се изтрива най-старата.... Мерси много ! :)
 
Код:
$sql = "INSERT INTO news SET name=:alabala ......";
Вкарваш новина.

Код:
$sql = "SELECT COUNT(id) AS num FROM news";
Това взема броя новини.

Код:
if($num > 4) {
$deleteItem = $num-4;
$sql = "DELETE FROM news ORDER BY id ASC LIMIT $deleteItem";
}
Това трие всички новини които са повече от 4.
 
heminei каза:
Код:
$sql = "INSERT INTO news SET name=:alabala ......";
Вкарваш новина.

Код:
$sql = "SELECT COUNT(id) AS num FROM news";
Това взема броя новини.

Код:
if($num > 4) {
$deleteItem = $num-4;
$sql = "DELETE FROM news ORDER BY id ASC LIMIT $deleteItem";
}
Това трие всички новини които са повече от 4.

Логиката ти е селектираш боря новини след което ако те примерно от заявката са 6,6>4 и DeleteItem = 6-4'2' И после $sql = "DELETE FROM news ORDER BY id ASC LIMIT $deleteItem" тире 2 новини .... да но не се получава нищо
 
Ето това което направих аз и работи,ако има някакви забележки....

Код:
	 $result = mysql_query('SELECT COUNT(id) FROM news'); 
         $count = mysql_result($result,0); 
         echo $count;  

		 	 if($count > 4) {
$deleteItem = $count-4;
$sql = "DELETE FROM `test`.`news` ORDER BY id ASC LIMIT $deleteItem";
mysql_query($sql);
}
 

Back
Горе