Документ взят из кэша поисковой машины. Адрес оригинального документа : http://genphys.phys.msu.su/mikromag/script/authuser.php3
Дата изменения: Mon Nov 1 03:19:53 2010
Дата индексирования: Mon Oct 1 22:15:13 2012
Кодировка: Windows-1251

//////////////////
//Скрипт отвечает за редактирование, просмотр данных о себе
// режимы работы
// старт - приглашения для регистрации, редактирования
// регистрация
// редактирование (personal_id= password= все в строке запроса)
// загрузка файла loadfoto (она же смена файла)
//

require_once($GLOBALS["DOCUMENT_ROOT"]."/mikromag/script/config.php3");

require_once($GLOBALS["DOCUMENT_ROOT"]."/mikromag/script/auth.php3");


////////////////////////////////begin/////////////////


class cl_registraciya {
var $fd, $action, $password, $login;


//****************************

function edit() {
require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/registration_edit.htm");
// require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/registration.htm");
} // end of edit

//*****************************

function obrabotka() {

$this->fd = $GLOBALS['HTTP_POST_VARS'];

//проверим если логин изменен не занят ли новый логин
if (!$this->login_maybechanged_free($this->fd['login'],$this->fd['id']))
{
$GLOBALS['login_not_free']=1;
require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/registration_edit.htm");
exit;
}

$s="update treg set f='".ads($this->fd["f"])
."', i='".ads($this->fd["i"])
."', o='".ads($this->fd["o"])
."', doljnost='".ads($this->fd["doljnost"])
."', organizacia='".ads($this->fd["organizacia"])
."', email='".ads($this->fd["email"])
."', straddress='".ads($this->fd["straddress"])
."', gorod='".ads($this->fd["gorod"])
."', zip='".ads($this->fd["zip"])
."', strana='".ads($this->fd["strana"])
."', status='".ads($this->fd["status"])
."', login='".ads($this->fd["login"])
."', password='".ads($this->fd["password"])
."', tel='".ads($this->fd["tel"])
."' where id=".intval($this->fd["id"]);

// echo "$s
";

$r=mysql_query($s);
if (mysql_errno()<>0) {echo mysql_errno().": ".mysql_error()."
Ошибка
записи!"; exit;}

require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/update_confirm.htm");


} // end of obrabotka ==================

//***************************

function read_data($login,$password)
{
$s="select * from treg where login='$login' and password='$password'";

//echo "$s
";

$r=mysql_query($s);
if (mysql_errno()!=0) {echo mysql_errno().": ".mysql_error()."
Ошибка
чтение!"; exit;}

if (mysql_num_rows($r)==1)
{
$this->fd=mysql_fetch_array($r);
return true;
}
else { return false;} // if

} // function check_login_pass

//************************

function login_maybechanged_free($new_login,$id)
{
$s="select * from treg where login='$new_login' and id<>$id";

//echo "$s
";

$r=mysql_query($s);
if (mysql_errno()!=0) {echo mysql_errno().": ".mysql_error()."
Ошибка
чтения 247!"; exit;}

if (mysql_num_rows($r)!=0)
{
return false;
}
else { return true;} // if

} // function login_maybechanged_free($new_login,$id)

//*****************

function spisokrabot_form()
{
require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/spisokrabot_form.htm");
}

//**************

function spisokrabot_save()
{

$s="update treg set spisokrabot='"
.ads($GLOBALS['spisokrabot'])
."' where login='"
.ads($this->fd['login'])
."' and password='"
.ads($this->fd['password'])
."'";
$r = mysql_query($s);
if (mysql_errno()!=0) {echo mysql_errno().": ".mysql_error()."
Ошибка
записи spisokrabot_save()!"; exit;}
require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/spisokrabot_save.htm");

} //function spisokrabot_save()

//***************************

function foto_form()
{
require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/foto_form.htm");
} // end of foto_form



//****************************

function foto_save()
{ global $userfile,$foto_save_error_msg;

$rash = substr(strtolower(@$GLOBALS['userfile_name']),-4);
if ($userfile!='none' && $userfile!='' && ($rash==".gif" || $rash==".jpg"))
{
$prefix = $GLOBALS["DOCUMENT_ROOT"].'/mikromag/user/foto/';
$shotfilename='file'.intval($this->fd['id']).$rash;
$filename=$prefix.$shotfilename;
@unlink($prefix.'file'.intval($this->fd['id']).".gif");
@unlink($prefix.'file'.intval($this->fd['id']).".jpg");
copy($userfile,$filename);

$s="update treg set foto='$shotfilename' where id=".intval($this->fd['id']);
// echo $s;
$r = mysql_query($s);
if (mysql_errno()!=0) {echo mysql_errno().": ".mysql_error()."
Ошибка
записи foto_save()!"; exit;}
}
else
{
$foto_save_error_msg="Не задано, или неверное имя файла! Файл должен иметь расширение gif или jpg!
Размер файла не должне превышать 25 кБ.
";
}//if

require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/foto_confirm.htm");

} // end of foto_save


//****************

function user_page()
{
require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/user_page.htm");
} // function user_page()

//*****************

function main()
{

if (!$this->read_data($this->login,$this->password))
{ require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/wrong_loginpass.htm");
exit;
} //if

// основное окно приглашение - будет статическим
switch (@$this->action)
{
case "user_page":
$this->user_page(); // страница пользователя
break;
case "edit":
// require($GLOBALS["DOCUMENT_ROOT"]."/mikromag/user/registration_edit.htm");
$this->edit(); // форма для редактирование данных пользователя
break;
case "obrabotka":
$this->obrabotka(); // обработка введенных данных - сохранение изменений в старом пользователе. Выдача сообщения об удаче, неудаче, ошибке
break;
case "spisokrabot_form":
$this->spisokrabot_form(); // р
break;
case "spisokrabot_save":
$this->spisokrabot_save(); //
break;
case "foto_save":
$this->foto_save(); // форма для загрузки фото. Результат в fototake
break;
case "foto_form":
$this->foto_form(); // провека полученного фото. Сообщение об ошибке или show
break;
default:
$this->user_page();
//echo ":)"; // регистрация нового пользователя
break;
} //switch

} //************* end of main *****************

function constr()
{ global $action, $PHP_AUTH_USER, $PHP_AUTH_PW;
// @$this->fd=$fd;
@$this->action = ads($action);
@$this->login = ads($PHP_AUTH_USER);
@$this->password = ads($PHP_AUTH_PW);
} // ***************** end of constructor

} // end of cl_registraciya

//********************************

$reg=new cl_registraciya;
$reg->constr();
$reg->main();

?>