latheesan
08-12-2009, 11:55 PM
Hello,
is it possible to optimize/shorten this code snippet?
This code resides inside a while loop that runs atleast 100,000+ times, so i just wanted to know if it's possible.
// Workout if child category 1 exist in db
if ($child_cat_1_name != '' && strlen($child_cat_1_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_1` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_1_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_1_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_1` SET `name` = '%s'",
safeStr($child_cat_1_name)));
$child_cat_1_id = mysql_insert_id();
}
}
// Workout if child category 2 exist in db
if ($child_cat_2_name != '' && strlen($child_cat_2_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_2` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_2_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_2_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_2` SET `name` = '%s'",
safeStr($child_cat_2_name)));
$child_cat_2_id = mysql_insert_id();
}
}
// Workout if child category 3 exist in db
if ($child_cat_3_name != '' && strlen($child_cat_3_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_3` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_3_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_3_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_3` SET `name` = '%s'",
safeStr($child_cat_3_name)));
$child_cat_3_id = mysql_insert_id();
}
}
// Workout if child category 4 exist in db
if ($child_cat_4_name != '' && strlen($child_cat_4_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_4` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_4_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_4_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_4` SET `name` = '%s'",
safeStr($child_cat_4_name)));
$child_cat_4_id = mysql_insert_id();
}
}
// Workout if child category 5 exist in db
if ($child_cat_5_name != '' && strlen($child_cat_5_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_5` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_5_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_5_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_5` SET `name` = '%s'",
safeStr($child_cat_5_name)));
$child_cat_5_id = mysql_insert_id();
}
}
is it possible to optimize/shorten this code snippet?
This code resides inside a while loop that runs atleast 100,000+ times, so i just wanted to know if it's possible.
// Workout if child category 1 exist in db
if ($child_cat_1_name != '' && strlen($child_cat_1_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_1` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_1_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_1_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_1` SET `name` = '%s'",
safeStr($child_cat_1_name)));
$child_cat_1_id = mysql_insert_id();
}
}
// Workout if child category 2 exist in db
if ($child_cat_2_name != '' && strlen($child_cat_2_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_2` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_2_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_2_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_2` SET `name` = '%s'",
safeStr($child_cat_2_name)));
$child_cat_2_id = mysql_insert_id();
}
}
// Workout if child category 3 exist in db
if ($child_cat_3_name != '' && strlen($child_cat_3_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_3` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_3_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_3_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_3` SET `name` = '%s'",
safeStr($child_cat_3_name)));
$child_cat_3_id = mysql_insert_id();
}
}
// Workout if child category 4 exist in db
if ($child_cat_4_name != '' && strlen($child_cat_4_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_4` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_4_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_4_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_4` SET `name` = '%s'",
safeStr($child_cat_4_name)));
$child_cat_4_id = mysql_insert_id();
}
}
// Workout if child category 5 exist in db
if ($child_cat_5_name != '' && strlen($child_cat_5_name) > 1)
{
$result = mysql_query(sprintf("SELECT `id` FROM `child_cat_5` WHERE (`name` = '%s') LIMIT 1",
safeStr($child_cat_5_name)));
if (mysql_num_rows($result) == 1)
{
$sql_row = mysql_fetch_array($result);
$child_cat_5_id = $sql_row['id'];
}
else
{
mysql_query(sprintf("INSERT INTO `child_cat_5` SET `name` = '%s'",
safeStr($child_cat_5_name)));
$child_cat_5_id = mysql_insert_id();
}
}
