SELECT `id` FROM `table` WHERE `id` > CURRENT_ID ORDER BY `id` ASC LIMIT 1;
SELECT `id` FROM `table` WHERE `id` < CURRENT_ID ORDER BY `id` ASC LIMIT 1;
<?php
$str = "first=value&arr[]=foo+bar&arr[]=baz";
parse_str($str, $output);
echo $output['first']; // value
echo $output['arr'][0]; // foo bar
echo $output['arr'][1]; // baz
?>
$input = 'ololo 123 test pif paf';
$array = explode(' ', $input); // ["ololo", "123", "test", "pif", "paf"]
$result = array();
$length = count($array);
for ($i = 0; $i+1 < $length; $i++) {
for ($j = $i+1; $j < $length; $j++) {
$result[] = $array[$i] . ' ' . $array[$j];
}
}
var_dump($result); // ["ololo 123", "ololo test", "ololo pif", "ololo paf", "123 test", "123 pif", "123 paf", "test pif", "test paf", "pif paf"]
Или генерировать токен рандомно и хранить его в базе?
И в этой записи будет поле mess_ids - где через запятую будут перечислены id непрочитанных сообщений.
Во втором варианте может получится так, что товар оплатят одновременно, т.к магазин ждет ответ от платежной системы для подтверждения оплаты.
SELECT * FROM `...`
WHERE DATE_ADD(`date`, INTERVAL 1 MONTH) > NOW()