[Sources] Récupérez la valeur de l'autoincrement d'une table

Eléphant du PHP | 231 Messages

09 oct. 2006, 20:02

Cette source permet de récupérer la valeur de l'auto increment d'une table, une question récurente posé par de nombreux codeurs (moi le premier)

Je la fournis avec ma fonction de gestion des erreurs SQL ...
	function SQL_Error($query, $error, $line)
	{
		$log_file = fopen("log.txt","a+");
		$result = '['.date("d-m-Y H:i:s").']|'.$_SERVER['PHP_SELF'].'|'.$query.' : '.preg_replace("#([0-9]+)$#", $line, $error).'\n' ;
		//Pour le Debugage écran
		echo $result;
		/* Pour le Debugage dans un fichier de log
		Écriture dans le fichier log
		fwrite($log_file, $result);
		fclose($log_file);
		*/
		exit();
	}


	//On Regarde les 'table status'
	$query = 'SHOW TABLE STATUS';
	$result = mysql_query($query) or SQL_Error($query, mysql_error(), __LINE__);
	//On parcoure les ligne de resultats
	while( $infos_tables = mysql_fetch_array($result) )
	{
		//Si le nom de la table $infos_tables[0] == au nom de la table dont vous voulez l'autoincrement ...
		if( $infos_tables[0] == $db_table )
			$_SESSION['id'] = $infos_tables[10];
	}
/* Ou alors : 
	while( $infos_tables = mysql_fetch_assoc($result) )
	{
		if( $infos_tables['Name'] == $db_table )
			return $infos_tables['Auto_increment'];
	}
*/
?>
Poster vos critiques :P !