в нутри функции у тебя нету объявления массива $row. А судя по коду он должен быть глобальным либо передавать как параметр.
Код:
function add_line()
{
global $row;
if (isset($_POST['name']))
{
$name=$_POST['name'];
}
if (!empty($name))
$zapro = mysql_query ("insert into line (id_area, name) values ($row['entry'],'$name')");
if ($zapro == 'true')
{
echo "dobavleno";
}
else
{
echo "ne dob";
}
А на счет проверочек, то их много куда пихать надо