Вам нужно будет пройти через это, так как это может привести к ошибкам, а не к тесту, который только что написали в «холодном» виде ... но вот что вы ищете (хотя это не учитывает удаление данных, поэтому вы 'таблица не просто растет и растет).
$month = date('m');
$year = date('y');
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
$result = $mysqli->query("SELECT token FROM token_table WHERE year = $year AND month = $month ");
if(count($result) > 0) {
$token = $result[0]['token'];
} else {
$token = generateYourTokenHoweverYouDoIt();
$mysqli->query("INSERT INTO token_table (month, year, token) VALUES ('$month', '$year', '$token')");
}
//Use token.
Кроме того, вам необходимо убедиться, что любая переменная, которую вы используете в запросе к базе данных, очищена для обеспечения безопасности ... как правило, только те, которые могут быть получены от пользователя.вход, так что здесь должно быть все в порядке ... но всегда полезно думать о безопасности при работе с базами данных ...
Посмотрите: http://php.net/manual/en/mysqli.query.php
и: http://php.net/manual/en/book.pdo.php
Лично я использую PDO, но писать это дольше, и mysqli также более естественен и для меня.Но посмотрите на оба.