You could do this
<?php
$output = array();
if ((!isset($_POST['state'])) && (($_POST['country'] != $r['country']) || ($_POST['city'] != $r['city'])))
{
$details = $_POST['city'].', '.$_POST['country'];
update_user_actions(1, $details);
$output[] = "City and Country Changed";
}
else if ((isset($_POST['state'], $_POST['city'])) && (($_POST['state'] != $r['state']) || ($_POST['city'] != $r['city'])))
{
$details = $_POST['city'].', '.$_POST['state'];
update_user_actions(1, $details);
$output[] = "City and State Changed";
}
if ((isset($_POST['credentials'])) && ($_POST['credentials'] != $r['credentials']))
{
$details = '';
update_user_actions(2, $details);
$output[] = "Credentials Changed";
}
if ((isset($_POST['specialties'])) && ($_POST['specialties'] != $r['specialties']))
{
$details = '';
update_user_actions(3, $details);
$counter++;
$output[] = "Specialties Changed";
}
if ((isset($_POST['personalweb'])) && ($_POST['personalweb'] != $r['personalweb']))
{
$details = $_POST['personalweb'];
update_user_actions(4, $details);
$counter++;
$output[] = "Personal Web Changed";
}
if (empty($output))
{
echo "No modifications made";
}
elseif(count($output) == 1)
{
echo $output[0];
}
else
{
echo "Profile Changed";
}
But its not the best way of doing it, but it does mean you dont have to restructure your entire script