Re-compter l'auto-increment d'une table (pour les fainéants ^^)

Contenu du snippet

Voici un petit script à placer dans votre fichier fonctions.inc.php, et appeller la fonction dans vos pages pour recompter l'auto_increment d'une table.

NB : la connexion à la base de données n'est pas inclue dans cette fonction, mais il est possible de l'ajouter facilement.

Source / Exemple :


//////////////////////////////////////////////////////////////////////////////////////////////////
||												||
|| Mettre à jour l'auto_increment d'une table							||
|| en recomptant celui_ci pour chaque enregistrements						||
|| @author : titoo87										||
|| @mail : titoo87@gmail.com									||
||												||
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
// Auto_increment
function mysql_update_ai($table, $champ, $debut){
	
	// Gestion des erreurs
	error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
	
	// Vérification des informations
	$table=str_replace("\"|'|<|>","",$table);
	$champ=str_replace("\"|'|<|>","",$champ);
	
	if(!preg_match("/[A-Za-z0-9]+/",$table)){ echo "Table incorrecte";} 
	else{
		if(!isset($debut)||$debut==""){ echo "Erreur, début non précisé"; return false;} 
		else{
			// Supression du champ d'auto_increment
			mysql_query("ALTER TABLE ".$table." DROP ".$champ."") or die ("Impossible de mettre à jour l'auto_increment : table ou champ inexistant.");
					
			// Ajout du champ d'auto_increment
			mysql_query("ALTER TABLE ".$table." ADD ".$champ." INT AUTO_INCREMENT PRIMARY KEY FIRST;") or die ("Impossible de mettre à jour l'auto_increment");
					
			// On retourne TRUE
			return true;
		}
	}
}

Conclusion :


C'est assez pratique pour garder une table propre ^^

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.