// connexion à la bd à ajouter
$query="select count(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$nbr_mssg = mysql_fetch_assoc($result);
if ($nbr_mssg > 100) {
$query="select min(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$min = mysql_fetch_assoc($result);
$query="select max(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$max = mysql_fetch_assoc($result);
$laisser = $min +100 ;
$id=$max ;
while ($id > $laisser) {
$query="DELETE FROM minichat WHERE id=$id";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$id = $id -1 ;
}
}
je n'ai pas testé le code et il peut etre optimisé bien sur<?
mysql_connect ('localhost','root','');
mysql_select_db ('test');
$query="select count(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$nbr_mssg = mysql_fetch_assoc($result);
echo "$nbr_mssg <br>" ;
if ($nbr_mssg > 100) {
$query="select min(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$min = mysql_fetch_assoc($result);
echo "min : $min <br>" ;
$query="select max(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$max = mysql_fetch_assoc($result);
echo "max : $max <br>" ;
$laisser = $min +100 ;
$id=$max ;
echo "laisser : $laisser<br>" ;
while ($id > $laisser) {
$query="DELETE FROM minichat WHERE id=$id";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
echo "supprimé numero : $id <br>" ;
$id = $id -1 ;
}
}
mysql_close();
?>
<?
mysql_connect ('localhost','root','');
mysql_select_db ('test');
$query="select count(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$nbr_mssg = mysql_fetch_assoc($result);
echo "$nbr_mssg <br>" ;
if ($nbr_mssg > 100) {
$query="select min(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$min = mysql_fetch_assoc($result);
echo "min : $min <br>" ;
$query="select max(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$max = mysql_fetch_assoc($result);
echo "max : $max <br>" ;
$laisser = $max - 100 ;
$id=$min ;
echo "laisser : $laisser<br>" ;
while ($id < $laisser) {
$query="DELETE FROM minichat WHERE id=$id";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
echo "supprimé numero : $id <br>" ;
$id = $id + 1 ;
}
}
mysql_close();
?>
voila, s'il y a des erreurs colle ici tout ca que va t'afficher le navigateur<?
mysql_connect ('localhost','root','');
mysql_select_db ('test');
$query="select count(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$nbr_mssg = mysql_fetch_assoc($result);
echo "$nbr_mssg <br>" ;
if ($nbr_mssg > 100) {
$query="select min(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$min = mysql_fetch_assoc($result);
echo "min : $min <br>" ;
$query="select max(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$max = mysql_fetch_assoc($result);
echo "max : $max <br>" ;
$laisser = $max - 100 ;
$id=$min ;
echo "laisser : $laisser<br>" ;
while ($id < $laisser) {
$query="DELETE FROM minichat WHERE id=$id";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
echo "supprimé numero : $id <br>" ;
$id = $id + 1 ;
}
}
mysql_close();
?>
Le message d'erreur est le même:<?php
mysql_connect ('localhost','root','');
mysql_select_db ('test');
$query="select count(id) from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$nbr_mssg = mysql_fetch_assoc($result);
echo "$nbr_mssg <br>" ;
if ($nbr_mssg > 100)
{
$query="SELECT MIN(id) as mini FROM minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$min = mysql_fetch_assoc($result);
echo "min : ". $min['mini'] ."<br>\n" ;
$query="SELECT MAX(id) as maxi FROM minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$max = mysql_fetch_assoc($result);
echo "max : ". $max['maxi'] ."<br>\n" ;
$laisser = $max['maxi'] - 100 ;
$id = $min['mini'] ;
echo "Laissé : ". $laisser ."<br>\n" ;
while ($id < $laisser)
{
$query="DELETE FROM minichat WHERE id = ". $id .";";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
echo "Supprimé numero : ". $id ."<br>\n" ;
$id++;
}
}
mysql_close();
?> echo "min : ". $min['mini'] ."<br>\n" ;
au lieu de
echo "min : ". $min ."<br>\n" ;
en rajoutant un alias dans les requêtes SQL, pareil pour $max<?php
mysql_connect ('localhost','root','');
mysql_select_db ('test');
$query="select count(id) as nombres from minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$nbr_mssg = mysql_fetch_assoc($result);
echo $nbr_mssg['nombres'] ."<br>\n" ;
if ($nbr_mssg > 100)
{
$query="SELECT MIN(id) as mini FROM minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$min = mysql_fetch_assoc($result);
echo "min : ". $min['mini'] ."<br>\n" ;
$query="SELECT MAX(id) as maxi FROM minichat";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
$max = mysql_fetch_assoc($result);
echo "max : ". $max['maxi'] ."<br>\n" ;
$laisser = $max['maxi'] - 100 ;
$id = $min['mini'] ;
echo "Laissé : ". $laisser ."<br>\n" ;
while ($id < $laisser)
{
$query="DELETE FROM minichat WHERE id = ". $id .";";
$result = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error());
echo "Supprimé numero : ". $id ."<br>\n" ;
$id++;
}
}
mysql_close();
?>
Maintenant, est-ce que ton nombre de message reste correct indépendament de ce que ça t'affiche ? L'incrémentation est normale puisque ce n'est pas un nombre mais un numéro d'identifiant qui est inscrit.Utilisateurs parcourant ce forum : Bing [Bot], Google [Bot] et 34 invités