Вы никогда не посылаете переменные с именами:
"amp;log" и "amp;psw" скорее всего вы этот код откуда-то плохо скопировали и "amp;" - это отвалившаяся часть от &
но вообще более дурацкий способ проверить существование переменных в $_POST придумать сложно...
Код:
if (isset($_POST['psw'] && isset($_POST['log']))
{
# ваши действия
}
И, еще раз,
Код:
if (isset($submit))
никогда не выполнится, вы никогда не определяете эту переменную, поэтому в тело if'a вообще никогда не зайдет.
$HTTP_SESSION_VARS - сто лет назад deprecated
Header - аналогично, сейчас пишется со строчной буквы.
Зачем нужно это: $log2 = $log; - никому не понятно.
Код:
$result=mysql_query("select * from users where login='$log2'");
так делать нельзя ни в коем случае, это просто подарок для того, кто захочит сломать чего-нибудь в вашей базе данных. Для этого в глобальном плане существует mysql_real_escape(), но а вообще, короткие тексты лучше проверять регекспом на наличие нелегитимных символов.
Да и еще в придачу ко всему сверстать 2 строчки таблицами на кривом HTML1 (и то сомнительно как-то) и влепить туда AS1 флешку
Скажите, где вы такую гадость находите? Ну просто ведь поискать в гугле готовые решения - конечно, тоже много хлама, но все ж не на столько древнего...