Меню
Контакты
107023, Москва, пл. Журавлёва, 10с3, подъезд 31, офис 309
Пн-Пт: с 9-00 до 17-00   Сб-вс: выходной
Интернет-магазин
сетевого оборудования
Москва +7 (495) 103-41-03 +7 (915) 420-28-94
107023, Москва, пл. Журавлёва, 10с3, подъезд 31, офис 309
Пн-Пт: с 9-00 до 17-00   Сб-вс: выходной
Заказать звонок

Как при добавлении пользователя добавить в базу данных значения даты создания учетной записи и даты отключения

 28 Апр 2011    MikroTik, Практика и программирование MikroTik

Суть доработки в следующем: при добавлении пользователя в базу добавляется значение о дате создания учетной записи пользователя и дате отключения.

 

Приступим. Как обычно, выбираем один из Mikrotik Routerboard: Mikrotik RouterBoard 1100AH, Mikrotik RouterBoard 750G, Mikrotik RouterBoard RB493AH.

 

 MySQL таблица users

Рис.1. MySQL таблица Users.

 

Перед тем, как начать работу над скриптом, мы добавим необходимые поля в базу данных. В базе данных выбираем таблицу Users.

 

 MySQL Структура

Рис.2. MySQL Структура.

 

Выбираем Структура и жмем ОК.

 

 Как при добавлении пользователя добавить в базу данных значения даты создания учетной записи пользователя и даты отключения.

Рис.3. Создаем новое поле.

 

Создадим два поля: с именем day (тип INT) и month. В них будет храниться информация соответственно о числе и месяце отключения пользователя.

 

 Как при добавлении пользователя добавить в базу данных значения даты создания учетной записи пользователя и даты отключения.

Рис.4. Поле для даты создания пользователя.

 

В это поле будет заноситься дата создания пользователя.

 

 Как при добавлении пользователя добавить в базу данных значения даты создания учетной записи пользователя и даты отключения.

Рис.5. Создаем скрипт.

 

#!/usr/bin/env python

# -*- coding: utf_8 -*-

import MySQLdb

import mysql_db

import datetime

now_date = datetime.date.today()

cur_month = now_date.month

cur_day = now_date.day

user_day = cur_day

if cur_month == 12:

user_month = 1

else:

user_month = cur_month + 1

cur = mysql_db.db.cursor()

sql = ("INSERT INTO users (login_user, passwd_user, ip_user, create_date, day, month) VALUES ('%s', '%s', '%s', '%s', '%s', '%s')" % (login_user, passwd_user, ip_user,$

cur.execute(sql)

cur.close()

Разбираем скрипт:

import datetime – импортируем модуль для работы с датой

now_date = datetime.date.today() – получаем текущую дату и заносим значение в переменную now_date

 

 Как при добавлении пользователя добавить в базу данных значения даты создания учетной записи пользователя и даты отключения.

Рис.6. Значение переменной now_date.

 

cur_month = now_date.month – текущий месяц

cur_day = now_date.day – текущий день

 

В дальнейшем нам может понадобиться отключить пользователя с нулевым балансом по дате. Для этого нам нужно определить месяц отключения и занести в переменную user_month. Мы знаем, что пользователя нужно отключить в следующем месяце, поэтому прибавим к текущему месяцу 1 и получим месяц отключения пользователя. Но что делать, если текущий месяц 12-й? Для этого выполним проверку. 

 

if cur_month == 12: - если текуший месяц 12

user_month = 1 - то переменной user_month, присвоить 1

else: - иначе

user_month = cur_month + 1 - переменная user_month равна, текущий месяц + 1

Осталось добавить все данные в базу:

cur = mysql_db.db.cursor()

sql = ("INSERT INTO users (login_user, passwd_user, ip_user, create_date, day, month) VALUES ('%s', '%s', '%s', '%s', '%s', '%s')" % (login_user, passwd_user, ip_user,$

cur.execute(sql)

cur.close()

 

 Как при добавлении пользователя добавить в базу данных значения даты создания учетной записи пользователя и даты отключения.

Рис.7. Данные в базе.

 

Теперь можно приступить к написанию скрипта, который будет выполнять отключение пользователей по дате.

Евгений Рудченко специально для ASP24.