Connecting Tech Pros Worldwide Forums | Help | Site Map

LAST_INSERT_ID with ZEROFILL

WebSnozz
Guest
 
Posts: n/a
#1: Oct 18 '07
I am losing the leading zeros when I get autoincrement IDs from a
column with ZEROFILL enabled. I would like to have the leading
zeros. I have tried both the php function last_insert_id as well as
running a SELECT query and using the result. I am getting the correct
id, it is just losing the leading zeros. I have doulbe checked the
table in the database, and it does have the leading zeros. Thanks for
any help.

$result = mysql_query($insertQuery);
if($result)
{
//$uniqueFilenameResult = mysql_insert_id($link).$uploadFilename;
$insertIDResult = mysql_query("SELECT LAST_INSERT_ID()");
if($insertIDResult)
{
$nrows = mysql_num_rows($insertIDResult);
$rows = mysql_fetch_row($insertIDResult);
$uniqueFilenameResult = $rows[0].$filename;
}
}


Michael Fesser
Guest
 
Posts: n/a
#2: Oct 18 '07

re: LAST_INSERT_ID with ZEROFILL


..oO(WebSnozz)
Quote:
>I am losing the leading zeros when I get autoincrement IDs from a
>column with ZEROFILL enabled.
I wouldn't rely on that.
Quote:
>I would like to have the leading
>zeros. I have tried both the php function last_insert_id as well as
>running a SELECT query and using the result. I am getting the correct
>id, it is just losing the leading zeros. I have doulbe checked the
>table in the database, and it does have the leading zeros. Thanks for
>any help.
Just store normal integers and add the leading zeros when you really
need them, for example with sprintf() in your script

Micha
Kelsey Sigurdur
Guest
 
Posts: n/a
#3: Oct 19 '07

re: LAST_INSERT_ID with ZEROFILL


On Thu, 18 Oct 2007 18:45:25 +0000, WebSnozz wrote:
Quote:
I am losing the leading zeros when I get autoincrement IDs from a
column with ZEROFILL enabled. I would like to have the leading
zeros. I have tried both the php function last_insert_id as well as
running a SELECT query and using the result. I am getting the correct
id, it is just losing the leading zeros. I have doulbe checked the
table in the database, and it does have the leading zeros. Thanks for
any help.
>
$result = mysql_query($insertQuery);
if($result)
{
//$uniqueFilenameResult = mysql_insert_id($link).$uploadFilename;
$insertIDResult = mysql_query("SELECT LAST_INSERT_ID()");
if($insertIDResult)
{
$nrows = mysql_num_rows($insertIDResult);
$rows = mysql_fetch_row($insertIDResult);
$uniqueFilenameResult = $rows[0].$filename;
}
}
You can use str_pad() to fill it back out.

$insertIDResult = mysql_query("SELECT LAST_INSERT_ID()");
$insertIDResult = str_pad($insertIDResult, N, "0", STR_PAD_LEFT);

Where N is the desired length of the string.

--
Kelsey Sigurdur

Closed Thread


Similar PHP bytes