|
|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Andrej Kartashov 2:5020/400 06 Feb 2001 23:47:30 To : All Subject : ID numbers --------------------------------------------------------------------------------
Привет всем!
Сейчас для присваивания ID номеров пользователям использую следующий код:
# ------------------------------------------
$idfile = "$base_path/id_num";
sub Rnd {
my $id;
if (open(ID,"+<$idfile")) {
ID,2; seek ID,0,0;
flock ID,2; seek ID,0,0;
$id = <ID>; chomp($id);
seek ID,0,0; print ID ++$id,"\n";
close ID;
} elsif (open(ID,">$idfile")) {
$id = 400;
ID,2; seek ID,0,0;
flock ID,2; seek ID,0,0;
print ID "$id\n";
} else {
print "Can't open $idfile: $!\n";
exit;
}
return $id;
}
$ENV{'username'} = Rnd();
# --------------------------------------------
При заполнении пользователем формы этот код смотрит в файл "id_num",
добавляет единицу, присваевает новому пользователю id номер, и в этот же
файл (id_num) записывает новое значение
Хотелось бы переделать это чтобы он брал ID номера из заранее заданных в
файле номеров
В смысле того, что... в файле заранее указаны необходимые номера... при
заполнении пользователем формы скрипт бы смотрел в файл, брал первый номер
из списка, присваивал бы его пользователю, стирал присвоенный номер из
списка....
Или другой вариант, менее желательный... скрипт работает так же как и
сейчас... тоесть добавляет номера по одному... HО! чтобы он заглядывал в
некий файл и проверял на наличие запрещенных и использованных номеров... ну
и разумеется добавлял туда уже сгенерированные номера...
Да, Id номера должны быть в следующем формате:
00998
00999
01000
01001
Это я к тому, что скрипт должен знать о нулях спереди
--
Спасибо заранее!
Андрей
--- ifmail v.2.15dev5
* Origin: http://www.beautiful-ladies.com/ (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/8578e1212450.html, оценка из 5, голосов 10
|