Как мне создать переменную, которая увеличивается с ‘1’ каждый раз, когда она используется, и сбрасывается в конце месяца?

Я все еще новичок в php, javascript и т. Д., И я делаю свой файл register.php для приложения, над которым я работаю, и теперь я хочу, чтобы каждый зарегистрированный пользователь получил уникальный идентификатор, и вот что я получил:

<?php echo date("Ymd") ?>

Это дает мне (прямо сейчас) 20161005, и я хочу, чтобы это было частью моего идентификатора для моих пользователей, а затем я хочу добавить к этому число, например

$userID= date('Ymd') + some number

Это число должно начинаться с 1 снова в начале следующего месяца, чтобы моя база данных не получала много номеров в конце 🙂

Эта комбинация этих двух чисел будет моим идентификатором пользователя, который поможет мне определить, какие данные загружать в приложение и т. Д. ^^

Возможно ли это реализовать с помощью php?

0

Решение

Не сказать, что вы делаете это неправильно, но вы должны рассмотреть возможность использования свойства AUTO_INCREMENT, встроенного в БД. Это даст вам целое число, которое автоматически увеличивается с каждой вставкой.

Вы можете установить его как атрибут таблицы,

dev.mysql.com/doc/refman/5.7/en/example-auto-increment.html

И затем, когда вы делаете вставки, вы просто пропускаете это поле, и волшебным образом оно будет увеличиваться. Если вам нужно использовать его сразу после вставки, вы можете получить его значение с помощью (в MySqli)

  mysqli_insert_id( $db );

http://php.net/manual/en/mysqli.insert-id.php

Затем для созданного времени вы должны использовать правильный тип данных, такой как отметка времени или дата / время. Это также может быть установлено, чтобы иметь значение по умолчанию NOW() текущее время Затем, когда вы делаете запросы на основе даты, вы можете использовать такие вещи, как MONTH( create_date ) чтобы найти всех пользователей, которые подписались в данный месяц и т. д.

Вот вики-страница о том, что я имел в виду под суррогатным ключом

https://en.wikipedia.org/wiki/Surrogate_key

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

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]