|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Andrej Kartashov 2:5020/400 06 Feb 2001 23:47:29 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.perl/85785be1e83c.html, оценка из 5, голосов 10
|