доброго времени суток. Нашёл статью о хранении сессий в БД у вас на сайте
https://club.shelek.ru/viewart.php?id=267, спасибо автору. Но, похоже в код вкарлась ошибка.
if (!mysql_query("UPDATE sessions SET atime=NOW() WHERE sid='$sid'"))
die(mysql_error()); // Стоит проверить права на UPDATE
if (!mysql_affected_rows()) // строки нет - надо создать
{
if (!mysql_query(
"INSERT INTO sessions (sid) VALUES ('$sid')"
))
die(mysql_error()); // Может, вставка запрещена?
return ""; // Т.к. данных нет, то возвращаю пустую строку
}
когда приходит больше двух запросов и они попадают практически одновременно, скрипт умирает. Потому что mysql_affected_rows - ноль, и оба скрипта кидаются делать INSERT один успевает, другой умирает... я использовал такую конструкцию:
mysql_query( "INSERT INTO sessions (sid) VALUES ('$sid') ON DUPLICATE KEY UPDATE atime=NOW()" ) or die(mysql_error());
может быть есть смысл исправить, ошибка неочевидна, по моему скромному мнению.
Спасибо.
Андрей.