Ik heb een scriptje wat het aantal bezoekers wat op dat moment aanwezig is telt. Hierbij maak ik gebruik van een mysql-tabelletje waar iedere bezoeker zn eigen id mee krijgt.
Maar dat id veld is een auto_increment veld en die loopt binnen een maand in de duizenden, waardoor ik of het id veld zal moeten vergroten of iets moet vinden dat de tabel weer vanaf 1 begint.
Mijn vraag is dus: hoe 'reset' ik een auto_increment veld zodat deze weer bij 1 begint (zonder de tabel zelf te verwijderen en opnieuw te installeren). Is dat uberhaupt wel mogelijk? Indien alle gegevens die in deze tabel zitten hierbij verloren gaan, is dat geen punt.
Je zult dan je tabel leeg moeten gooien (TRUNCATE `tabelnaam`), en dan is je auto_increment waarde automatisch gereset. Je kunt de id's niet hergebruiken, tenzij je UPDATE-statements gebruikt, in plaats van INSERT-statements...
<?php
// Hier even eigen gegevens invullen
$host = 'localhost';
$username = '';
$password = '';
$db_naam = '';
mysql_connect($host, $username, $password);
mysql_select_db($db_naam);
// Verander de tabelenaam en het veldnaam waar de auto_increment op staat eventjes
$tabel = 'editids';
$veld = 'id';
// Hier hoef je niks meer aan te passen
$rijen = mysql_query("SELECT ".$veld." FROM ".$tabel) or die(mysql_error());
while ($rij = mysql_fetch_object($rijen)) {
$array[] = $rij->{$veld};
}
for ($i = 0; $i < count($array); $i++) {
mysql_query("UPDATE ".$tabel." SET ".$veld." = ".($i + 1)." WHERE ".$veld." = ".$array[$i]);
}
?>